@charset "utf-8";

/* ======================================================
 * parts_pc.css
 * ------------------------------------------------------
 * @media print, screen and (min-width: 768px)
 * - Common
 * - Element >>> Heading
 * - Element >>> Text
 * - Element >>> List
 * - Element >>> Link
 * - Element >>> Image
 * - Element >>> Video
 * - Element >>> Form
 * - Element >>> Other
 * - Layout >>> Column
 * - Layout >>> Table
 * - Layout >>> Box
 * - Layout >>> Other
 * - Component >>> Navi
 * - Component >>> Index
 * - Component >>> Other
 * - Clearfix
 * Media Queries
 * Print
====================================================== */
@font-face {
  font-family: "思源黑体";
  src: url("SourceHanSansCN-Normal.otf");
}
* { 
  font-family: "思源黑体";
}
@media print, screen and (min-width: 768px) {
  /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */
  /* ----- font ----- */
  .faq-layout .faq_trigger > .faq_label > .faq_icon,
  .faq-layout .faq_detail > .faq_detail_inner > .faq_icon {
    font-family: roboto;
  }
  
  /* ----- a ----- */
  a:link img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  a.block {
    display: block;
    color: #333;
  }
  
  /* ----- opacity ----- */
  img.imgover:hover,
  .heading-lv1-v2 .heading_print > a:hover,
  .banner-compo-v2 > .block:hover,
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow:hover,
  .about-layout .banner_block:hover,
  .library-item .library_table_column .library_table_data a:hover {
    opacity: .7;
  }
  .csr-index-compo > .index_banner > a.block:hover {
    opacity: .8;
  }
  
  /* ----- transition ----- */
  .navi-anchor .navi_inner > li > a::before {
    -webkit-transition: bottom .2s ease-out 0s;
    transition: bottom .2s ease-out 0s;
  }
  .tab-layout > .tab_navi > .tab_list > li > a::after,
  .tab-layout-v2 > .tab_navi > .tab_list > li > a::after {
    -webkit-transition: width .2s ease-out 0s;
    transition: width .2s ease-out 0s;
  }
  .search-box .search_form,
  .accordion-layout .accordion_trigger,
  .accordion-layout-v3 .accordion_trigger,
  .faq-layout .faq_trigger,
  .index-layout-v2 > a.block .index_image::after,
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow,
  .products-search-layout,
  .products-search-layout .search_frame {
    -webkit-transition: border-color .2s ease-out 0s;
    transition: border-color .2s ease-out 0s;
  }
  .search-box .search_submit,
  .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label,
  .faq-layout .faq_trigger::after,
  .tab-layout > .tab_navi > .tab_list > li > a::before,
  .tab-layout-v2 > .tab_navi > .tab_list > li > a::before,
  .products-index-layout .index_heading .index_toggle .index_toggle_trigger,
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots > li button,
  .modal-movie #cboxClose > span {
    -webkit-transition: background-color .2s ease-out 0s;
    transition: background-color .2s ease-out 0s;
  }
  [class*="heading-lv"] a.block .heading_title,
  .index-layout > a.block .index_title,
  .index-layout-v2 > a.block .index_title,
  .index-layout-v3 > a.block .index_title,
  .index-layout-v4 > a.block .index_title,
  .index-layout-v5 > a.block .index_title,
  .index-layout-v6 > a.block .index_title,
  .index-layout-v7 > a.block .index_title,
  .index-layout-v8 > a.block .index_title,
  .index-layout-v9 > .index_heading > a.block .index_title,
  .news-compo a.block .news_title,
  .related-compo-v2 .related_inner .related_links_2 a.block .related_links_title {
    -webkit-transition: color .2s ease-out 0s;
    transition: color .2s ease-out 0s;
  }
  img.imgover,
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow,
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li {
    -webkit-transition: opacity .2s ease-out 0s;
    transition: opacity .2s ease-out 0s;
  }
  .accordion-layout .accordion_trigger > .accordion_label::before,
  .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label::before,
  .accordion-layout-v3 .accordion_trigger > .accordion_label::before,
  .accordion-layout-v3 .accordion_trigger > .accordion_label::after,
  .faq-layout .faq_trigger > .faq_label::before,
  .faq-layout .faq_trigger > .faq_label::after,
  .products-index-layout .index_heading .index_toggle .index_toggle_trigger::before,
  .products-search-layout .search_heading::before {
    -webkit-transition: transform .2s ease-out 0s;
    transition: transform .2s ease-out 0s;
  }
  .about-layout .banner_block,
  .officer-layout .officer_button,
  .officer-layout .officer_button > li {
    -webkit-transition: all .2s ease-out 0s;
    transition: all .2s ease-out 0s;
  }
  
  /* ----- sprite ----- */
  [class^="heading-lv"] a.block.a-blank .heading_title::after,
  [class^="heading-lv"] a.block.a-pdf .heading_title::after,
  .heading-lv1-v2 .heading_print > a::before,
  a.link-inline[class*="a-"]::after,
  .link-text a[class*="a-"]::after,
  .link-button a[class*="a-"] > .link_label::after,
  .link-button-v2 a[class*="a-"] > .link_label::after,
  .link-button-v3 a[class*="a-"] > .link_label::after,
  .link-button-v4 a[class*="a-"] > .link_label::after,
  .index-layout > a.block[class*="a-"] .index_caption::after,
  .index-layout > .block .index_title .index_title_list > .index_title_item > a[class*="a-"]::after,
  .index-layout-v2 > a.block.a-video .index_image::before,
  .index-layout-v3 > a.block[class*="a-"] .index_title::after,
  .index-layout-v4 > a.block[class*="a-"] .index_title::after,
  .index-layout-v5 > a.block[class*="a-"] .index_title::after,
  .index-layout-v6 > a.block[class*="a-"] .index_title::after,
  .index-layout-v7 > a.block[class*="a-"] .index_title::after,
  .index-layout-v8 > a.block[class*="a-"] .index_title::after,
  .index-layout-v9 > .index_links > li > a[class*="a-"]::before,
  .products-index-layout .index_heading .index_title a[class*="a-"]::after,
  .news-compo a.block[class*="a-"]::after,
  .news-select-wrap .news_select_rss .a-rss::before,
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow,
  .related-compo-v2 .related_inner .related_links_2 a.block[class*="a-"] .related_links_title::after,
  .location-compo .location_caption .location_company > a[class*="a-"]::after,
  .location-compo .location_table .location_links > li > a[class*="a-"] > .location_links_label::after,
  .library-item .library_table_data a .data_icon,
  .csr-news-compo .news_heading > .news_heading_link > li > a.a-rss::before,
  .contact-layout .contact_button > li > a[class*="a-"]::before {
    display: inline-block;
    background-image: url(../img/cmn_sprite_ic01.png);
    background-repeat: no-repeat;
    vertical-align: middle;
    content: "";
  }
  [class^="heading-lv"] a.block.a-blank .heading_title::after,
  a.link-inline.a-blank::after,
  .link-text a.a-blank::after,
  .link-button a.a-blank > .link_label::after,
  .index-layout > a.block.a-blank .index_caption::after,
  .index-layout > .block .index_title .index_title_list > .index_title_item > a.a-blank::after,
  .index-layout-v3 > a.block.a-blank .index_title::after,
  .index-layout-v4 > a.block.a-blank .index_title::after,
  .index-layout-v5 > a.block.a-blank .index_title::after,
  .index-layout-v6 > a.block.a-blank .index_title::after,
  .index-layout-v7 > a.block.a-blank .index_title::after,
  .index-layout-v8 > a.block.a-blank .index_title::after,
  .index-layout-v9 > .index_links > li > a.a-blank::before,
  .products-index-layout .index_heading .index_title a.a-blank::after,
  .news-compo a.block.a-blank::after,
  .related-compo-v2 .related_inner .related_links_2 a.block.a-blank .related_links_title::after,
  .location-compo .location_caption .location_company > a.a-blank::after,
  .location-compo .location_table .location_links > li > a.a-blank > .location_links_label::after,
  .contact-layout .contact_button > li > a.a-blank::before { width: 12px; height: 10px; background-position: 0px -80px; }
  .link-button-v2 a.a-blank > .link_label::after,
  .link-button-v4 a.a-blank > .link_label::after { width: 12px; height: 10px; background-position: -40px -80px; }
  .link-button-v3 a.a-blank > .link_label::after { width: 12px; height: 10px; background-position: -80px -80px; }
  [class^="heading-lv"] a.block.a-pdf .heading_title::after,
  a.link-inline.a-pdf::after,
  .link-text a.a-pdf::after,
  .link-button a.a-pdf > .link_label::after,
  .link-button-v2 a.a-pdf > .link_label::after,
  .link-button-v3 a.a-pdf > .link_label::after,
  .index-layout > a.block.a-pdf .index_caption::after,
  .index-layout > .block .index_title .index_title_list > .index_title_item > a.a-pdf::after,
  .index-layout-v3 > a.block.a-pdf .index_title::after,
  .index-layout-v4 > a.block.a-pdf .index_title::after,
  .index-layout-v5 > a.block.a-pdf .index_title::after,
  .index-layout-v6 > a.block.a-pdf .index_title::after,
  .index-layout-v7 > a.block.a-pdf .index_title::after,
  .index-layout-v8 > a.block.a-pdf .index_title::after,
  .index-layout-v9 > .index_links > li > a.a-pdf::before,
  .news-compo a.block.a-pdf::after,
  .related-compo-v2 .related_inner .related_links_2 a.block.a-pdf .related_links_title::after,
  .contact-layout .contact_button > li > a.a-pdf::before { width: 15px; height: 15px; background-position: 0px -120px; }
  .link-button-v4 a.a-pdf > .link_label::after { width: 15px; height: 15px; background-position: -40px -120px; }
  .library-item .library_table_data .a-pdf .data_icon { width: 28px; height: 28px; background-position: -80px -120px; }
  .library-item .library_table_data .a-play .data_icon { width: 28px; height: 28px; background-position: -120px -120px; }
  .library-item .library_table_data .a-excel .data_icon { width: 28px; height: 28px; background-position: -160px -120px; }
  .link-text a.a-excel::after { width: 23px; height: 23px; background-position: 0px -160px; }
  .link-text a.a-word::after { width: 23px; height: 23px; background-position: -40px -160px; }
  .link-text a.a-ppt::after { width: 23px; height: 23px; background-position: -80px -160px; }
  .link-text a.a-zip::after { width: 19px; height: 24px; background-position: -120px -160px; }
  .link-text a.a-video::after { width: 26px; height: 20px; background-position: -160px -160px; }
  .index-layout-v2 > a.block.a-video .index_image::before { width: 67px; height: 48px; background-position: -280px -160px; }
  .library-item .library_table_data .a-video .data_icon { width: 31px; height: 24px; background-position: -360px -160px; }
  .link-text a.a-play::after { width: 20px; height: 20px; background-position: -400px -160px; }
  .link-text a.a-mail::after { width: 20px; height: 15px; background-position: 0px -200px; }
  .link-button-v2 a.a-mail > .link_label::after { width: 20px; height: 15px; background-position: -40px -200px; }
  .heading-lv1-v2 .heading_print > a::before,
  .link-text a.a-print::after { width: 20px; height: 18px; background-position: 0px -240px; }
  .link-text a.a-speaker::after,
  .library-item .library_table_data .a-speaker .data_icon { width: 32px; height: 24px; background-position: 0px -280px; }
  .link-text a.a-rss::after { width: 14px; height: 14px; background-position: 0px -320px; }
  .news-select-wrap .news_select_rss .a-rss::before,
  .csr-news-compo .news_heading > .news_heading_link > li > a.a-rss::before { width: 24px; height: 24px; background-position: -40px -320px; }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-prev { width: 20px; height: 34px; background-position: 0px -360px; }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-next { width: 20px; height: 34px; background-position: -40px -360px; }
  .location-compo .location_table .location_links > li > a.a-map > .location_links_label::after { width: 17px; height: 25px; background-position: 0px -400px; }
  
  /* ----- data-row-pc ----- */
  [data-row-pc]:not([data-row-pc="1"]) {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  [data-row-pc]:not([data-row-pc="auto"]) > * {
    margin-top: 1.25em;
    margin-left: 36px;
  }
  [data-row-pc="1"] > *:nth-child(-n+1),
  [data-row-pc="2"] > *:nth-child(-n+2),
  [data-row-pc="3"] > *:nth-child(-n+3),
  [data-row-pc="4"] > *:nth-child(-n+4),
  [data-row-pc="5"] > *:nth-child(-n+5),
  [data-row-pc="6"] > *:nth-child(-n+6),
  [data-row-pc="7"] > *:nth-child(-n+7),
  [data-row-pc="8"] > *:nth-child(-n+8) {
    margin-top: 0 !important;
  }
  [data-row-pc="1"] > *:nth-child(n+1),
  [data-row-pc="2"] > *:nth-child(2n+1),
  [data-row-pc="3"] > *:nth-child(3n+1),
  [data-row-pc="4"] > *:nth-child(4n+1),
  [data-row-pc="5"] > *:nth-child(5n+1),
  [data-row-pc="6"] > *:nth-child(6n+1),
  [data-row-pc="7"] > *:nth-child(7n+1),
  [data-row-pc="8"] > *:nth-child(8n+1) {
    margin-left: 0 !important;
  }
  [data-row-pc="2"] > * { width: calc((100% -  36px) / 2); }
  [data-row-pc="3"] > * { width: calc((100% -  72px) / 3); }
  [data-row-pc="4"] > * { width: calc((100% - 108px) / 4); }
  [data-row-pc="5"] > * { width: calc((100% - 144px) / 5); }
  [data-row-pc="6"] > * { width: calc((100% - 180px) / 6); }
  [data-row-pc="7"] > * { width: calc((100% - 216px) / 7); }
  [data-row-pc="8"] > * { width: calc((100% - 252px) / 8); }
  /* for IE11 */
  [data-browser="ie11"] [data-row-pc="2"] > * { width: calc(((100% -  36px) / 2) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="3"] > * { width: calc(((100% -  72px) / 3) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="4"] > * { width: calc(((100% - 108px) / 4) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="5"] > * { width: calc(((100% - 144px) / 5) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="6"] > * { width: calc(((100% - 180px) / 6) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="7"] > * { width: calc(((100% - 216px) / 7) - 0.1px); }
  [data-browser="ie11"] [data-row-pc="8"] > * { width: calc(((100% - 252px) / 8) - 0.1px); }
  /* for Edge */
  [data-browser="edge"] [data-row-pc="2"] > * { width: calc(((100% -  36px) / 2) - 0.1px); }
  [data-browser="edge"] [data-row-pc="3"] > * { width: calc(((100% -  72px) / 3) - 0.1px); }
  [data-browser="edge"] [data-row-pc="4"] > * { width: calc(((100% - 108px) / 4) - 0.1px); }
  [data-browser="edge"] [data-row-pc="5"] > * { width: calc(((100% - 144px) / 5) - 0.1px); }
  [data-browser="edge"] [data-row-pc="6"] > * { width: calc(((100% - 180px) / 6) - 0.1px); }
  [data-browser="edge"] [data-row-pc="7"] > * { width: calc(((100% - 216px) / 7) - 0.1px); }
  [data-browser="edge"] [data-row-pc="8"] > * { width: calc(((100% - 252px) / 8) - 0.1px); }
  [data-row-pc="auto"] {
    margin-right: -36px;
    margin-bottom: -.5em;
  }
  [data-row-pc="auto"] > * {
    margin-top: 0 !important;
    margin-right: 36px;
    margin-bottom: .5em;
    margin-left: 0;
  }
  .column-layout[data-row-pc] > .column_item {
    margin-top: 1.25em;
  }
  .column-layout.type-door2[data-row-pc] > .column_item {
    margin-top: 2.5em;
  }
  .banner-compo .banner_list[data-row-pc] > li {
    margin-top: 1.5em;
  }
  .link-text[data-row-pc="auto"] {
    margin-right: -40px;
    margin-bottom: -.5em;
  }
  .link-text[data-row-pc="auto"] > li {
    margin-right: 40px;
    margin-bottom: .5em;
  }
  
  /* ----- search ----- */
  .search-box .search_form {
    position: relative;
    border: 3px solid #dfdfe3;
    float: right;
  }
  .search-box .search_form:hover {
    border-color: #d0d0d4;
  }
  .search-box .search_input {
    width: 100%;
    height: 35px;
    padding: 5px 70px 5px 10px;
    border: none;
    background-color: #fff;
    box-shadow: none;
    font-size: 1.4rem;
    outline: none;
  }
  .search-box {
    padding-top: 15px;
  }
  .search-box .search_submit {
    position: absolute;
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    padding: 0;
    border: none;
    background-color: #e60012;
    background-image: url(../img/cmn_search_ic01.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    text-indent: -9999em;
    outline: none;
  }
  .search-box .search_submit:hover {
    background-color: #cf0212;
  }
  
  /* ------------------------------------------------------
   * Element >>> Heading
  ------------------------------------------------------ */
  [class^="heading-lv"] .heading_title,
  [class^="heading-lv"] .heading_subtitle {
    line-height: 1.2;
  }
  [class^="heading-lv"] .heading_title[class*="js-equalHeight_"] {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
  [class^="heading-lv"] a.block.a-blank .heading_title::after,
  [class^="heading-lv"] a.block.a-pdf .heading_title::after {
    margin: 0 0 0 12px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  #main .heading-lv1 + *,
  #main .heading-lv1 + section > [class*="heading-lv"]:first-child,
  #main .heading-lv1-v3 + *,
  #main .heading-lv1-v3 + section > [class*="heading-lv"]:first-child {
    margin-top: 2.5em;
        color: #888;
  }
  #main .heading-lv2 + * {
    margin-top: 1.9em;
  }
  #main .heading-lv3 + *,
  #main .heading-lv4 + * {
    margin-top: 1.25em;
  }
  #main .heading-lv5 + * {
    margin-top: .95em;
  }
  
  /* ----- heading-lv1 ----- */
  .heading-lv1 {
    position: relative;
    margin: 0 0 2.5em;
  }
  .heading-lv1 .heading_image {
    position: absolute;
    top: 2.0em;
    right: 0;
  }
  .heading-lv1 .heading_image > img {
    max-width: 240px;
    height: auto;
  }
  .heading-lv1 .heading_image + *,
  .heading-lv1 .heading_image + * + * {
    padding-right: 320px;
  }
  .heading-lv1 .heading_title {
    font-size: 3.2rem;
  }
  .heading-lv1 .heading_title .f-italic {
    margin-right: 6px;
  }
  .heading-lv1 .heading_subtitle {
    margin-bottom: .75em;
  }
  .heading-lv1 .heading_title + .heading_subtitle {
    margin-top: .75em;
    margin-bottom: 0;
  }
  /* v2 */
  .heading-lv1-v2 {
    margin: 0 0 3.5em 0;
    background-color: #e2e5ea;
    background-repeat: no-repeat;
    background-position: 50% 50%;
  }
  .heading-lv1-v2.is-bond {
    margin-bottom: 0;
  }
  .heading-lv1-v2.type-about   { background-image: url(../img/cmn_heading_bg01_01.jpg); }
  .heading-lv1-v2.type-products{ background-image: url(../img/cmn_heading_bg01_02.jpg); }
  .heading-lv1-v2.type-rd      { background-image: url(../img/cmn_heading_bg01_03.jpg); }
  .heading-lv1-v2.type-csr     { background-image: url(../img/cmn_heading_bg01_04.jpg); }
  .heading-lv1-v2.type-form    { background-image: url(../img/cmn_heading_bg01_05.jpg); }
  .heading-lv1-v2.type-news    { background-image: url(../img/cmn_heading_bg01_08.jpg); }

  .heading-lv1-v2.type-contact { 
    background-image: url(../img/banner-contact.jpg); 
  }
  .heading-lv1-v2.type-join { 
    background-image: url(../img/banner-join.jpg); 
  }


  .category-2 .heading-lv1-v2.type-products,
  .category-6 .heading-lv1-v2.type-products,
  .category-7 .heading-lv1-v2.type-products,
  .category-8 .heading-lv1-v2.type-products,
  .category-9 .heading-lv1-v2.type-products,
  .category-10 .heading-lv1-v2.type-products,
  .category-11 .heading-lv1-v2.type-products{ 
    background-image: url(../img/banner2.jpg); 
  }
  .category-32 .heading-lv1-v2.type-products,
  .category-33 .heading-lv1-v2.type-products { 
    background-image: url(../img/banner32.jpg); 
  }
  .category-3 .heading-lv1-v2.type-products,
  .category-21 .heading-lv1-v2.type-products,
  .category-22 .heading-lv1-v2.type-products,
  .category-23 .heading-lv1-v2.type-products,
  .category-24 .heading-lv1-v2.type-products,
  .category-25 .heading-lv1-v2.type-products,
  .category-26 .heading-lv1-v2.type-products,
  .category-27 .heading-lv1-v2.type-products { 
    background-image: url(../img/banner3.jpg); 
  }
  .category-4 .heading-lv1-v2.type-products,
  .category-29 .heading-lv1-v2.type-products,
  .category-30 .heading-lv1-v2.type-products,
  .category-31 .heading-lv1-v2.type-products { 
    background-image: url(../img/banner4.jpg); 
  }
  .category-5 .heading-lv1-v2.type-products,
  .category-28 .heading-lv1-v2.type-products { 
    background-image: url(../img/banner5.jpg); 
  }



  .heading-lv1-v2 .block {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 1280px;
    max-width: 100%;
    height: 300px;
    margin: 0 auto;
    padding: 0 40px;
  }
  .heading-lv1-v2 .heading_title {
    width: 100%;
    padding-right: 150px;
    font-size: 4.2rem;
    text-shadow: 1px 1px 0px rgba(255,255,255,.5);
  }
  .heading-lv1-v2 .heading_title .is-smaller {
    font-size: 64.28%;
  }
  .heading-lv1-v2 .heading_subtitle {
    width: 100%;
    margin-bottom: .75em;
    padding-right: 150px;
  }
  .heading-lv1-v2 .heading_print {
    position: absolute;
    top: 20px;
    right: 40px;
  }
  .heading-lv1-v2 .heading_print > a {
    display: block;
    position: relative;
    padding: 7px 15px 7px 43px;
    border: 1px solid #dfdfe3;
    background-color: #fff;
    font-size: 1.4rem;
    text-decoration: none;
  }
  .heading-lv1-v2 .heading_print > a::before {
    position: absolute;
    top: 50%;
    left: 12px;
    margin-top: -9px;
  }
  /* v3 */
  .heading-lv1-v3 {
    margin: 0 0 2.5em 0;
    background-color: #fff;
  }
  .heading-lv1-v3 .heading_visual {
    padding: 15px;
    text-align: center;
  }
  
  /* ----- heading-lv2 ----- */
  .heading-lv2 {
    margin: 5em 0 1.9em;
  }
  .heading-lv2 .block {
    position: relative;
    padding: 0 0 20px 0;
    border-bottom: 1px solid #dfdfe3;
    text-decoration: none;
  }
  .heading-lv2 .block::before {
    position: absolute;
    bottom: -1px;
    left: 50%;
    width: 200px;
    height: 1px;
    background-color: #e60012;
    margin: 0 0 0 -100px;
    content: "";
  }
  .heading-lv2 .heading_title {
    font-size: 3.6rem;
    text-align: center;
  }
  /* v2 */
  .heading-lv2-v2 {
    margin: 5em 0 1.9em;
  }
  .heading-lv2-v2 .block {
    position: relative;
    padding: 0 0 20px 0;
    border-bottom: 1px solid #dfdfe3;
    text-decoration: none;
  }
  .heading-lv2-v2 .block::before {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 200px;
    height: 1px;
    background-color: #e60012;
    content: "";
  }
  .heading-lv2-v2 .heading_title {
    font-size: 3.6rem;
  }
  .heading-lv2-v2 a.block .heading_title::after {
    display: inline-block;
    position: relative;
    top: -3px;
    width: 12px;
    height: 12px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .heading-lv2-v2 .heading_subtitle {
    margin-bottom: .75em;
    font-size: 1.5rem;
  }
  .heading-lv2-v2 a.block:hover .heading_title {
    color: #e60012;
  }
  
  /* ----- heading-lv3 ----- */
  .heading-lv3 {
    margin: 3.75em 0 1.25em;
  }
  .heading-lv3 .block {
    position: relative;
    padding: 0 0 15px 0;
    text-decoration: none;
  }
  .heading-lv3 .block::before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50px;
    height: 1px;
    background-color: #e60012;
    content: "";
  }
  .heading-lv3 .heading_title {
    font-size: 3.0rem;
  }
  .heading-lv3 a.block .heading_title::after {
    display: inline-block;
    position: relative;
    top: -3px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .heading-lv3 .heading_subtitle {
    margin-bottom: .75em;
    font-size: 1.4rem;
    font-weight: 300;
  }
  .heading-lv3 a.block:hover .heading_title {
    color: #e60012;
  }
  
  /* ----- heading-lv4 ----- */
  .heading-lv4 {
    margin: 2.5em 0 1.25em;
  }
  .heading-lv4 .block {
    position: relative;
    padding: 0 0 10px 0;
    text-decoration: none;
  }
  .heading-lv4 .block::before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 1px;
    background-color: #999;
    content: "";
  }
  .heading-lv4 .heading_title {
    font-size: 2.4rem;
  }
  .heading-lv4 a.block .heading_title::after {
    display: inline-block;
    position: relative;
    top: -3px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .heading-lv4 a.block:hover .heading_title {
    color: #e60012;
  }
  
  /* ----- heading-lv5 ----- */
  .heading-lv5 {
    margin: 1.9em 0 .95em;
  }
  .heading-lv5 .heading_title {
    font-size: 2.2rem;
    font-weight: 700;
  }
  
  /* ------------------------------------------------------
   * Element >>> Text
  ------------------------------------------------------ */
  /* ----- text-paragraph ----- */
  .text-paragraph {
    margin-top: 1em;
  }
  .text-paragraph[data-gap-pc="x0"]   { margin-top: 0 !important; }
  .text-paragraph[data-gap-pc="x0.5"] { margin-top: .5em !important; }
  .text-paragraph[data-gap-pc="x1"]   { margin-top: 1em !important; }
  .text-paragraph[data-gap-pc="x1.5"] { margin-top: 1.5em !important; }
  .text-paragraph[data-gap-pc="x2"]   { margin-top: 2em !important; }
  .text-paragraph[data-gap-pc="x2.5"] { margin-top: 2.5em !important; }
  .text-paragraph[data-gap-pc="x3"]   { margin-top: 3em !important; }
  
  /* ----- text-lead ----- */
  .text-lead {
    margin: 1em 0 .75em;
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.6;
  }
  
  /* ----- text-catch ----- */
  .text-catch {
    margin: 1em 0 .75em;
    color: #e60012;
    font-size: 3.6rem;
    line-height: 1.6;
    text-align: center;
  }
  /* v2 */
  .text-catch-v2 {
    margin: 1em 0 .75em;
    font-size: 2.0rem;
    line-height: 1.6;
    text-align: center;
  }
  
  /* ----- text-title ----- */
  .text-title {
    margin: 1em 0 .5em;
    font-weight: 700;
  }
  #main .text-title + * {
    margin-top: .5em;
  }
  
  /* ----- text-quote ----- */
  .text-quote {
    margin-top: 1em;
    padding-left: 30px;
  }
  
  /* ------------------------------------------------------
   * Element >>> List
  ------------------------------------------------------ */
  [class*="list-note"],
  [class*="list-bullet"],
  [class*="list-order"] {
    margin-top: 1em;
  }
  [class*="list-note"].type-section,
  [class*="list-bullet"].type-section,
  [class*="list-order"].type-section {
    margin-top: 2em;
  }
  [class*="list-description"] {
    margin-top: 1.5em;
  }
  [class*="list-description"].type-section {
    margin-top: 2.5em;
  }
  [class*="list-note"] > li + li,
  [class*="list-bullet"] > li + li,
  [class*="list-order"] > li + li {
    margin-top: .75em;
  }
  [class*="list-note"].type-section > li + li,
  [class*="list-bullet"].type-section > li + li,
  [class*="list-order"].type-section > li + li {
    margin-top: 1.5em;
  }
  [class*="list-"].is-nest {
    margin: .75em 0 1em;
  }
  [class*="list-"].is-nest.type-section {
    margin: 1.5em 0 2em;
  }
  [class*="list-note"] > li > .list_detail,
  [class*="list-bullet"] > li > .list_detail,
  [class*="list-order"] > li > .list_detail {
    margin-top: .5em;
  }
  [class*="list-note"].type-section > li > .list_detail,
  [class*="list-bullet"].type-section > li > .list_detail,
  [class*="list-order"].type-section > li > .list_detail {
    margin-top: .75em;
  }
  [class*="list-note"] > li > .list_detail > *:first-child,
  [class*="list-note"] > li > .list_detail > *:first-child > [class*="heading-lv"],
  [class*="list-bullet"] > li > .list_detail > *:first-child,
  [class*="list-bullet"] > li > .list_detail > *:first-child > [class*="heading-lv"],
  [class*="list-order"] > li > .list_detail > *:first-child,
  [class*="list-order"] > li > .list_detail > *:first-child > [class*="heading-lv"],
  [class*="list-description"] > dd > *:first-child,
  [class*="list-description"] > dd > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- list-al-right ----- */
  .list-al-right {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    margin-top: 1em;
  }
  .list-al-right > [class*="list-"] {
    margin-top: 0;
  }
  
  /* ----- list-note ----- */
  .list-note > li {
    position: relative;
    padding-left: 1.2em;
    font-size: 1.5rem;
  }
  .list-note > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  /* v2 */
  .list-note-v2 > li {
    position: relative;
    padding-left: 3em;
    font-size: 1.5rem;
  }
  .list-note-v2 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  /* v3 */
  .list-note-v3 > li {
    position: relative;
    padding-left: 1.7em;
    font-size: 1.5rem;
  }
  .list-note-v3 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  /* v4 */
  .list-note-v4 > li {
    position: relative;
    padding-left: 3em;
    font-size: 1.5rem;
  }
  .list-note-v4 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  
  /* ----- list-bullet ----- */
  .list-bullet > li {
    position: relative;
    padding-left: 22px;
  }
  .list-bullet > li::before {
    position: absolute;
    top: .5em;
    left: 0;
    width: 10px;
    height: 10px;
    border: 2px solid #e60012;
    background-color: #fff;
    content: "";
  }
  .list-bullet > li > .list_detail.is-noindent {
    margin-left: -22px;
  }
  /* v2 */
  .list-bullet-v2 > li {
    position: relative;
    padding-left: 15px;
    font-size: 1.6rem;
  }
  .list-bullet-v2 > li::before {
    position: absolute;
    top: .65em;
    left: 0;
    width: 5px;
    height: 5px;
    background-color: #999;
    content: "";
  }
  .list-bullet-v2 > li > .list_detail.is-noindent {
    margin-left: -15px;
  }
  /* v3 */
  .list-bullet-v3 > li {
    position: relative;
    padding-left: 22px;
  }
  .list-bullet-v3 > li::before {
    position: absolute;
    top: .5em;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #999;
    content: "";
  }
  .list-bullet-v3 > li > .list_detail.is-noindent {
    margin-left: -22px;
  }
  /* v4 */
  .list-bullet-v4 > li {
    position: relative;
    padding-left: 15px;
    font-size: 1.6rem;
  }
  .list-bullet-v4 > li::before {
    position: absolute;
    top: .7em;
    left: 0;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: #999;
    content: "";
  }
  .list-bullet-v4 > li > .list_detail.is-noindent {
    margin-left: -15px;
  }
  
  /* ----- list-order ----- */
  .list-order > li {
    position: relative;
    padding-left: 2em;
  }
  .list-order > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
    font-weight: 700;
  }
  .list-order > li > .list_detail.is-noindent {
    margin-left: -2em;
  }
  /* v2 */
  .list-order-v2 > li {
    position: relative;
    padding-left: 3em;
  }
  .list-order-v2 > li > .list_mark {
    position: absolute;
    top: 0;
    left: 0;
  }
  .list-order-v2 > li > .list_detail.is-noindent {
    margin-left: -3em;
  }
  
  /* ----- list-description ----- */
  .list-description > dt {
    margin: 1em 0 .5em;
    font-weight: 700;
  }
  .list-description > dt:first-child {
    margin-top: 0 !important;
  }
  .list-description > dd {
  }
  /* v2 */
  .list-description-v2 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
  }
  .list-description-v2 + .list-description-v2 {
    margin-top: 1em;
  }
  .list-description-v2 > dt {
    margin-right: 36px;
    font-weight: 700;
  }
  .list-description-v2 > dd {
  }
  
  /* ------------------------------------------------------
   * Element >>> Link
  ------------------------------------------------------ */
  [class*="link-text"] {
    margin-top: 1em;
  }
  [class*="link-text"] > li + li {
    margin-top: .5em;
  }
  [class*="link-text"] > li > a:hover {
    text-decoration: underline;
  }
  [class*="link-button"] {
   /* margin-top: 1.5em;*/
  }
  [class*="link-button"] > li + li {
    margin-top: 1em;
  }
  [class*="link-button"] a {
    line-height: 1.5;
  }
  [class*="link-button"].gp-al-center {
    margin-top: 2em;
  }
  [class*="link-button"].is-centering {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin-top: 2em;
  }
  [class*="link-button"].is-centering > li {
    display: -webkit-flex;
    display: flex;
  }
  [class*="link-button"].is-centering > li + li {
    margin-top: 0;
    margin-left: 36px;
  }
  [class*="link-button"].is-centering > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 376px;
    min-width: 0;
  }
  [class*="link-button"][data-row-pc] > li {
    display: -webkit-flex;
    display: flex;
  }
  [class*="link-button"][data-row-pc] > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    min-width: 0;
  }
  [class*="link-button"] > li > a[class*="js-equalHeight_"] {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
  }
  [class*="link-"].is-nest {
    margin: .5em 0 1em;
  }
  
  /* ----- link-inline ----- */
  a.link-inline {
    text-decoration: underline;
  }
  a.link-inline:hover {
    color: #e60012;
  }
  a.link-inline.a-blank::after,
  a.link-inline.a-pdf::after {
    position: relative;
    top: -2px;
    margin: 0 6px;
  }
  
  /* ----- link-text ----- */
  .link-text a {
  }
  .link-text a::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .link-text a[class*="a-"]::after {
    right: 0;
    margin: 0 0 0 8px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  
  /* ----- link-button ----- */
  .link-button a {
    display: inline-block;
    position: relative;
    min-width: 280px;
    max-width: 100%;
    padding: 15px 12px;
    border: 1px solid #dfdfe3;
    background-color: #fff;
    text-align: center;
    text-decoration: none;
  }
  .link-button a.a-pdf {
    padding: 15px 38px;
  }
  .link-button a:hover {
    border-color: #fff;
    box-shadow: 0 5px 10px 2px rgba(0,0,0,.15);
  }
  .link-button a > .link_label {
    display: inline-block;
    position: relative;
    padding: 0 16px;
  }
  .link-button a[class*="a-"] > .link_label {
    padding: 0 26px;
  }
  .link-button a.a-pdf > .link_label {
    padding-left: 0;
  }
  .link-button a > .link_label::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 3px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .link-button a[class*="a-"] > .link_label::after {
    right: 0;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .link-button a.a-pdf > .link_label::after {
    margin-top: -7px;
  }
  /* v2 */
  .link-button-v2 a {
    display: inline-block;
    position: relative;
    min-width: 280px;
    max-width: 100%;
    padding: 16px 13px;
    background-color: #555;
    color: #fff;
    text-align: center;
    text-decoration: none;
  }
  .link-button-v2 a:hover {
    box-shadow: 0 5px 10px 2px rgba(0,0,0,.15);
  }
  .link-button-v2 a > .link_label {
    display: inline-block;
    position: relative;
    padding: 0 16px;
  }
  .link-button-v2 a[class*="a-"] > .link_label {
    padding: 0 26px;
  }
  .link-button-v2 a > .link_label::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 3px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .link-button-v2 a[class*="a-"] > .link_label::after {
    right: 0;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .link-button-v2 a.a-pdf > .link_label::after {
    margin-top: -7px;
  }
  .link-button-v2.type-contact a {
    width: 100%;
    min-width: 0;
    font-size: 2.2rem;
  }
  .link-button-v2.type-contact a > .link_label {
    display: block;
  }
  .link-button-v2.type-contact a.a-mail  > .link_label::after {
    margin-top: -7px;
  }
  /* v3 */
  .link-button-v3 a {
    display: inline-block;
    position: relative;
    min-width: 280px;
    max-width: 100%;
    padding: 15px 12px;
    border: 1px solid #e60012;
    background-color: #fff;
    text-align: center;
    text-decoration: none;
  }
  .link-button-v3 a:hover {
    box-shadow: 0 5px 10px 2px rgba(0,0,0,.15);
  }
  .link-button-v3 a > .link_label {
    display: inline-block;
    position: relative;
    padding: 0 16px;
  }
  .link-button-v3 a[class*="a-"] > .link_label {
    padding: 0 26px;
  }
  .link-button-v3 a > .link_label::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 3px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .link-button-v3 a[class*="a-"] > .link_label::after {
    right: 0;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .link-button-v3 a.a-pdf > .link_label::after {
    margin-top: -7px;
  }
  /* v4 */
  .link-button-v4 a {
    display: inline-block;
    position: relative;
    width: 100%;
    max-width: 100%;
    padding: 10px 13px;
    background-color: #e60012;
    color: #fff;
    text-align: center;
    text-decoration: none;
  }
  .link-button-v4 a:hover {
    box-shadow: 0 5px 10px 2px rgba(0,0,0,.15);
  }
  .link-button-v4 a > .link_label {
    display: inline-block;
    position: relative;
    padding: 0 16px;
  }
  .link-button-v4 a[class*="a-"] > .link_label {
    padding: 0 26px;
  }
  .link-button-v4 a > .link_label::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 3px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .link-button-v4 a[class*="a-"] > .link_label::after {
    right: 0;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .link-button-v4 a.a-pdf > .link_label::after {
    margin-top: -7px;
  }
  
  /* ------------------------------------------------------
   * Element >>> Image
  ------------------------------------------------------ */
  /* ----- image-set ----- */
  .image-set {
    margin-top: 2em;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  [class*="column-media"] > .column_image > .image-set + .image-set {
    margin-top: 1.25em;
  }
  .image-set.gp-al-right {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }
  .image-set.gp-al-left {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
  .image-set:not(.gp-al-left):not(.gp-al-right) .image_inner {
    text-align: center;
  }
  /* for IE11 hack */
  _:-ms-lang(x)::-ms-backdrop, .image-set > .image_inner {
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    min-width: 1px;
  }
  .image-set .image_inner > *:first-child,
  .image-set .image_inner > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .image-set .image_inner > a {
    display: block;
  }
  .category .image-set .image_inner img {
    width: 251px;
    height: 150px;
  }
  .search .image-set .image_inner img {
    width: 251px;
    height: 150px;
  }
  .image-set .image_caption {
    margin-top: .7em;
    font-weight: 300;
    text-align: left;
  }
  .single-post .sd-pro-info .wx-p ol {
    padding-bottom: 1em;
  }
  .single-post .sd-pro-info .wx-p ol li {  
    line-height: 2em;
  }
  .single-post .sd-pro-info dt p {
    text-indent: 0;
  }
  .sd-pro-info dl dt,.sd-pro-info dl dd { 
    display: inline-block;
   }
   .sd-pro-info dl dd {
    float: right;
   }
   .sd-pro-info dl dd {
    width: 55%;
    text-align: center;
    padding-top: 40px;
   }
   .single-post table td { 
    text-align: left;
  }
  .single-post #tab-03 .sd-pro-info .wx-p li {
    width: 33.3333%;
    float: left;
    padding: 10px;
  }
  .single-post .sd-pro-info .wx-p li img {
    width: 398px;
    max-width: 100%;
    height: 285px;
  }
  /* ------------------------------------------------------
   * Element >>> Video
  ------------------------------------------------------ */
  
  /* ------------------------------------------------------
   * Element >>> Form
  ------------------------------------------------------ */
  
  /* ------------------------------------------------------
   * Element >>> Other
  ------------------------------------------------------ */
  /* ----- icon-news ----- */
  .icon-news {
    display: inline-block;
    min-width: 100px;
    padding: 0 3px;
    background-color: #787878;
    color: #fff;
    font-size: 1.4rem;
    font-weight: 300;
    font-style: normal;
    line-height: 24px;
    text-align: center;
    vertical-align: middle;
  }
  
  /* ----- icon-sgds ----- */
  .icon-sgds img {
    width: 60px;
    height: 60px;
  }
  
  /* ----- icon-warranty ----- */
  .icon-warranty {
    margin: 0 3px;
  }
  .icon-warranty img {
    position: relative;
    top: -3px;
    vertical-align: middle;
  }
  
  /* ----- logo-brand ----- */
  .logo-brand {
    padding: 80px 0 60px;
    text-align: center;
  }
  [class*="heading-lv"] + .logo-brand {
    padding-top: 60px;
  }
  .logo-brand + * {
    margin-top: 0 !important;
  }
  /* v2 */
  .logo-brand-v2 {
    padding: 40px 0;
  }
  [class*="heading-lv"] + .logo-brand-v2 {
    padding-top: 0;
  }
  .logo-brand-v2 + * {
    margin-top: 0 !important;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Column
  ------------------------------------------------------ */
  [class*="column-layout"] > [class*="column_item"] > *:first-child,
  [class*="column-layout"] > [class*="column_item"] > *:first-child > [class*="heading-lv"],
  [class*="column-media"] > [class*="column_"] > *:first-child,
  [class*="column-media"] > [class*="column_"] > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- column-layout ----- */
  .column-layout {
    margin-top: 2.5em;
  }
  .column-layout.has-separator {
    margin-top: 3em;
    padding-top: 3em;
    border-top: 1px solid #ddd;
  }
  
  /* ----- column-media ----- */
  .column-media {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
   /* margin-top: 2.5em;*/
   padding: 1.1em 1em 1em 1em;
  }
  .column-media[data-media-side="right"] {
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .column-media[data-media-side] > .column_image {
    max-width: calc((100% -  36px) / 2);
  }
  .column-media[data-media-size="1/2"] > .column_image { width: calc((100% -  36px) / 2); }
  .column-media[data-media-size="1/3"] > .column_image { width: calc((100% -  72px) / 3); }
  .column-media[data-media-size="1/4"] > .column_image { width: calc((100% - 108px) / 4); }
  .column-media[data-media-size="1/5"] > .column_image { width: calc((100% - 144px) / 5); }
  .column-media[data-media-size="1/6"] > .column_image { width: calc((100% - 180px) / 6); }
  .column-media[data-media-side="right"] > .column_image {
    margin-left: 36px;
  }
  .column-media[data-media-side="left"] > .column_image {
    margin-right: 36px;
  }
  .column-media > .column_detail[data-wraparound="false"] {
    -webkit-flex: 1;
    flex: 1;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Table
  ------------------------------------------------------ */
  [class^="table-layout"] {
    overflow-x: auto;
    padding-bottom: 1px;
  }
  [class*="table-layout"] th > *:first-child,
  [class*="table-layout"] th > *:first-child > [class*="heading-lv"],
  [class*="table-layout"] td > *:first-child,
  [class*="table-layout"] td > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- table-layout ----- */
  .table-layout {
    margin-top: 1.5em;
  }
  .table-layout .table_inner {
    width: 100%;
    border-top: 2px solid #ddd;
  }
  .table-layout caption {
    margin-bottom: .5em;
    text-align: left;
  }
  .table-layout caption > *:first-child,
  .table-layout caption > *:first-child > [class*="heading-lv"]{
    margin-top: 0 !important;
  }
  .table-layout caption > *:last-child {
    margin-bottom: 0 !important;
  }
  .table-layout .table_title {
    margin-bottom: .5em;
  }
  .table-layout .table_caption {
    margin: .5em 0;
    font-size: 1.6rem;
    font-weight: 300;
  }
  .table-layout th,
  .table-layout td {
    padding: 22px 20px;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    background-color: #fff;
    font-size: 1.6rem;
    font-weight: 400;
    text-align: left;
    vertical-align: top;
  }
  .table-layout tr > th:last-child,
  .table-layout tr > td:last-child {
    border-right: none;
  }
  .table-layout tr:last-child > th,
  .table-layout tr:last-child > td {
    border-bottom-width: 2px;
  }
  .table-layout thead tr:last-child > th,
  .table-layout thead tr:last-child > td {
    border-bottom-width: 1px;
  }
  .table-layout thead th {
    text-align: center;
    vertical-align: middle;
  }
  .table-layout th > *:first-child,
  .table-layout th > *:first-child > [class*="heading-lv"],
  .table-layout td > *:first-child,
  .table-layout td > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .table-layout .cell-style1 {
    background-color: #adadad;
    color: #fff;
  }
  .table-layout th.cell-style1 {
    font-weight: 700;
  }
  .table-layout thead th.cell-style1 {
    background-color: #787878;
  }
  .table-layout .cell-style2 {
    background-color: #f7f7fa;
  }
  .table-layout th.cell-style2 {
    font-weight: 700;
  }
  .table-layout .cell-style3 {
    background-color: #fff0f0;
    color: #e60012;
    font-weight: 700;
  }
  .table-layout .cell-style4 {
    color: #e60012;
    font-weight: 700;
  }
  .table-layout .cell-style5 {
    color: #666;
    font-weight: 700;
  }
  .table-layout .cell-style6 {
    background-color: #efe7fd;
  }
  .table-layout .cell-style7 {
    color: #e60012;
  }
  .table-layout .cell-border1 {
    border-bottom: 2px solid #ddd;
  }
  body:not([data-browser="chrome"]) .table-layout .cell-border2 {
    border-right: 1px solid #ddd !important;
  }
  .table-layout .cell-icon {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  }
  /* v2 */
  .table-layout-v2 {
    margin-top: 1.5em;
  }
  .table-layout-v2 .table_inner {
    width: 100%;
    border-top: 1px solid #ddd;
  }
  /* for IE11 */
  [data-browser="ie11"] .table-layout-v2.is-fixed .table_inner {
    table-layout: fixed;
  }
  .table-layout-v2 caption {
    margin-bottom: .5em;
    text-align: left;
  }
  .table-layout-v2 .table_title {
    margin-bottom: .5em;
    font-weight: 700;
  }
  .table-layout-v2 caption > *:first-child,
  .table-layout-v2 caption > *:first-child > [class*="heading-lv"]{
    margin-top: 0 !important;
  }
  .table-layout-v2 caption > *:last-child {
    margin-bottom: 0 !important;
  }
  .table-layout-v2 .table_title {
    margin-bottom: .5em;
  }
  .table-layout-v2 .table_caption {
    margin: .5em 0;
    font-size: 1.6rem;
    font-weight: 300;
  }
  .table-layout-v2 th,
  .table-layout-v2 td {
    padding: 24px 30px;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    background-color: #fff;
    font-size: 1.6rem;
    font-weight: 400;
    text-align: left;
    vertical-align: top;
  }
  .table-layout-v2 tr > th:last-child,
  .table-layout-v2 tr > td:last-child {
    border-right: none;
  }
  .table-layout-v2 thead th {
    text-align: center;
    vertical-align: middle;
  }
  .table-layout-v2 th > *:first-child,
  .table-layout-v2 th > *:first-child > [class*="heading-lv"],
  .table-layout-v2 td > *:first-child,
  .table-layout-v2 td > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .table-layout-v2 .cell-style1 {
    background-color: #adadad;
    color: #fff;
  }
  .table-layout-v2 th.cell-style1 {
    font-weight: 700;
  }
  .table-layout-v2 thead th.cell-style1 {
    background-color: #787878;
  }
  .table-layout-v2 .cell-style2 {
    background-color: #f7f7fa;
  }
  .table-layout-v2 th.cell-style2 {
    font-weight: 700;
  }
  /* v3 */
  .table-layout-v3 {
    margin-top: 1.5em;
  }
  .table-layout-v3 .table_inner {
    width: 100%;
    border-top: 1px solid #dfdfe3;
  }
  .table-layout-v3 caption {
    margin-bottom: .5em;
    text-align: left;
  }
  .table-layout-v3 caption > *:first-child,
  .table-layout-v3 caption > *:first-child > [class*="heading-lv"]{
    margin-top: 0 !important;
  }
  .table-layout-v3 caption > *:last-child {
    margin-bottom: 0 !important;
  }
  .table-layout-v3 th,
  .table-layout-v3 td {
    padding: 15px 30px;
    border-right: 1px solid #dfdfe3;
    border-bottom: 1px solid #dfdfe3;
    background-color: #fff;
    font-size: 1.6rem;
    font-weight: 400;
    text-align: left;
    vertical-align: top;
  }
  .table-layout-v3 tr > td {
    padding-right: 0;
    border-right: none;
    vertical-align: middle;
  }
  .table-layout-v3 tr > td:last-child {
    padding-right: 30px;
  }
  .table-layout-v3 th > *:first-child,
  .table-layout-v3 th > *:first-child > [class*="heading-lv"],
  .table-layout-v3 td > *:first-child,
  .table-layout-v3 td > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .table-layout-v3 .cell-style1 {
    padding: 24px 30px;
    background-color: #f7f7fa;
  }
  .table-layout-v3 th.cell-style1 {
    font-weight: 700;
  }
  .table-layout-v3 .cell-style2 {
    background-color: #fff;
  }
  
  /* ----- library-table-layout ----- */
  .library-table-layout .library_table_heading {
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: end;
    justify-content: flex-end;
    width: 100%;
    border-top: 2px solid #dfdfe3;
    background: #787878;
  }
  .library-table-layout .heading_text_lv1 {
    width: 19.5%;
    padding: 1em;
    border-left: 1px solid #dfdfe3;
    color: #ffffff;
    font-size: 1.6rem;
    font-weight: 700;
    text-align: center;
  }
  .library-table-layout .library_table_contents {
    border-bottom: 1px solid #dfdfe3;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Box
  ------------------------------------------------------ */
  [class*="box-layout"] {
    margin-top: 2.5em;
  }
  [class*="box-layout"] > [class*="box_detail"] > *:first-child,
  [class*="box-layout"] > [class*="box_detail"] > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- box-layout ----- */
  .box-layout {
    margin-top: 1.85em;
    border: 1px solid #ddd;
  }
  .box-layout > .box_title {
    padding: 24px 29px 24px;
    background-color: #f1f1f1;
    font-size: 2.0rem;
    font-weight: 700;
  }
  .box-layout > .box_detail {
    padding: 29px;
    background-color: #fff;
  }
  /* v2 */
  .box-layout-v2 {
    margin-top: 1.85em;
    border: 1px solid #e60012;
  }
  .box-layout-v2 > .box_title {
    padding: 15px;
    background-color: #e60012;
    color: #fff;
    font-size: 3.6rem;
    line-height: 1.2;
    text-align: center;
  }
  .box-layout-v2 > .box_title .is-smaller {
    font-size: 66.66%;
  }
  .box-layout-v2 > .box_detail {
    padding: 4%;
    background-color: #fff;
  }
  
  /* ------------------------------------------------------
   * Layout >>> Other
  ------------------------------------------------------ */
  /* ----- accordion-layout ----- */
  .accordion-layout {
    margin-top: 2.5em;
  }
  .accordion-layout .accordion_trigger {
    padding: 15px 20px 14px;
    border: 1px solid #dfdfe3;
    background-color: #fff;
    cursor: pointer;
  }
  .accordion-layout .accordion_trigger:hover {
    border-color: #bbb;
  }
  .accordion-layout .accordion_trigger > .accordion_label {
    display: block;
    position: relative;
    padding: 0 30px;
    font-size: 2.2rem;
    text-align: center;
  }
  .accordion-layout .accordion_trigger > .accordion_label::before,
  .accordion-layout .accordion_trigger > .accordion_label::after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 20px;
    height: 2px;
    margin: -1px 0 0 0;
    background-color: #e60012;
    content: "";
  }
  .accordion-layout .accordion_trigger > .accordion_label::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .accordion-layout .accordion_trigger.is-active > .accordion_label::before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .accordion-layout .accordion_detail {
    padding: 14px 19px;
    border: 1px solid #dfdfe3;
    border-top: none;
    background-color: #fff;
  }
  .accordion-layout .accordion_detail > *:first-child,
  .accordion-layout .accordion_detail > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  /* v2 */
  .accordion-layout-v2 {
    margin-top: 2.5em;
  }
  .accordion-layout-v2 .accordion_list_trigger {
    float: right;
    cursor: pointer;
  }
  .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label {
    display: inline-block;
    position: relative;
    min-width: 160px;
    padding: 7px 50px 7px 20px;
    background-color: #666;
    color: #fff;
    text-align: center;
  }
  .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label::before,
  .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label::after {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 16px;
    height: 2px;
    margin: -1px 0 0 0;
    background-color: #fff;
    content: "";
  }
  .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .accordion-layout-v2 .accordion_list_trigger.is-active > .accordion_list_label::before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .accordion-layout-v2 .accordion_list_trigger > .accordion_list_label:hover {
    background-color: #999;
  }
  .accordion-layout-v2 .accordion_list_detail {
    clear: both;
   /* padding-top: 30px;*/
  }
  .accordion-layout-v2 .accordion_list_detail > *:first-child,
  .accordion-layout-v2 .accordion_list_detail > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  /* v3 */
  .accordion-layout-v3 {
    margin-top: 2.5em;
  }
  .accordion-layout-v3 .accordion_trigger {
    padding: 15px 20px 14px;
    border: 1px solid #dfdfe3;
    background-color: #fff;
    cursor: pointer;
  }
  .accordion-layout-v3 .accordion_trigger > .accordion_label {
    display: block;
    position: relative;
    padding: 0 30px 0 0;
    font-size: 2.5rem;
    font-weight: 700;
    text-align: left;
  }
  .accordion-layout-v3 .accordion_trigger > .accordion_label::before,
  .accordion-layout-v3 .accordion_trigger > .accordion_label::after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 15px;
    height: 2px;
    margin: -1px 0 0 0;
    background-color: #656666;
    content: "";
  }
  .accordion-layout-v3 .accordion_trigger > .accordion_label::before {
    right: 10px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .accordion-layout-v3 .accordion_trigger > .accordion_label::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .accordion-layout-v3 .accordion_trigger:hover {
    border-color: #bbb;
  }
  .accordion-layout-v3 .accordion_trigger.is-active > .accordion_label::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .accordion-layout-v3 .accordion_trigger.is-active > .accordion_label::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .accordion-layout-v3 .accordion_detail {
    margin: 20px 0 0 0;
    border: none;
    background-color: #fff;
  }
  .accordion-layout-v3 .accordion_detail > *:first-child,
  .accordion-layout-v3 .accordion_detail > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- faq-layout ----- */
  .faq-layout {
    margin-top: 2.5em;
  }
  .faq-layout .faq_trigger {
    position: relative;
    padding: 15px 20px 16px 24px;
    border: 1px solid #dfdfe3;
    background-color: #fff;
    font-weight: 700;
    cursor: pointer;
  }
  .faq-layout .faq_trigger > .faq_label {
    position: relative;
    padding: 0 30px 0 33px;
    font-size: 1.8rem;
  }
  .faq-layout .faq_trigger > .faq_label > .faq_icon {
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #e60012;
    font-size: 3.2rem;
  }
  .faq-layout .faq_trigger > .faq_label::before,
  .faq-layout .faq_trigger > .faq_label::after {
    position: absolute;
    top: 51%;
    right: 0;
    width: 20px;
    height: 2px;
    margin: -1px 0 0 0;
    background-color: #e60012;
    content: "";
    z-index: 2;
  }
  .faq-layout .faq_trigger > .faq_label::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .faq-layout .faq_trigger:hover {
    border-color: #bbb;
  }
  .faq-layout .faq_trigger:after {
    position: absolute;
    top: 51%;
    right: 14px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
    margin: -1px 0 0 0;
    background-color: transparent;
    content: "";
  }
  .faq-layout .faq_trigger:hover::after {
    background-color: #f1f1f2;
  }
  .faq-layout .faq_trigger.is-active > .faq_label::before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .faq-layout .faq_detail {
    padding: 22px 20px 25px 23px;
    border: 1px solid #dfdfe3;
    border-top: none;
    background-color: #fff;
  }
  .faq-layout .faq_detail > .faq_detail_inner {
    position: relative;
    padding-left: 33px;
    font-size: 1.8rem;
  }
  .faq-layout .faq_detail > .faq_detail_inner > .faq_icon {
    position: absolute;
    left: 0;
    top: 13px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 3.2rem;
    font-weight: 700;
  }
  .faq-layout .faq_detail > .faq_detail_inner > .faq_icon + *,
  .faq-layout .faq_detail > .faq_detail_inner > .faq_icon + * > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- tab-layout ----- */
  .tab-layout {
    margin-top: 2.5em;
  }
  .tab-layout > .tab_navi {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    border-bottom: 1px solid #dfdfe3;
  }
  .tab-layout > .tab_navi > .tab_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    width: 1280px;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 40px;
  }
  .tab-layout > .tab_navi > .tab_list > li {
    display: -webkit-flex;
    display: flex;
    position: relative;
    bottom: -1px;
    margin-left: 36px;
  }
  .tab-layout[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc((100% -  72px) / 3); }
  .tab-layout[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc((100% - 108px) / 4); }
  /* for IE11 */
  [data-browser="ie11"] .tab-layout[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc(((100% -  72px) / 3) - 0.1px); }
  [data-browser="ie11"] .tab-layout[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc(((100% - 108px) / 4) - 0.1px); }
  /* for Edge */
  [data-browser="edge"] .tab-layout[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc(((100% -  72px) / 3) - 0.1px); }
  [data-browser="edge"] .tab-layout[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc(((100% - 108px) / 4) - 0.1px); }
  .tab-layout[data-count-pc="3"] > .tab_navi > .tab_list > li:nth-child(3n+1),
  .tab-layout[data-count-pc="4"] > .tab_navi > .tab_list > li:nth-child(4n+1) {
    margin-left: 0;
  }
  .tab-layout > .tab_navi > .tab_list > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 100%;
    padding: 20px 10px 30px;
    border: 1px solid transparent;
    border-bottom: none;
    font-size: 2.2rem;
    text-decoration: none;
    text-align: center;
  }
  .tab-layout > .tab_navi > .tab_list > li > a::before {
    position: absolute;
    top: 0;
    left: -1px;
    width: calc(100% + 2px);
    height: 2px;
    background-color: #666;
    content: "";
  }
  .tab-layout > .tab_navi > .tab_list > li:not(.is-current) > a::after {
    position: absolute;
    top: 0;
    left: -1px;
    width: 0;
    height: 2px;
    background-color: #e60012;
    content: "";
  }
  .tab-layout > .tab_navi > .tab_list > li:not(.is-current) > a:hover::after {
    width: calc(100% + 2px);
  }
  .tab-layout > .tab_navi > .tab_list > li.is-current > a {
    border-right-color: #dfdfe3;
    border-left-color: #dfdfe3;
    background-color: #fff;
    color: #e60012;
    font-weight: 700;
  }
  .tab-layout.has-anchor > .tab_navi > .tab_list > li.is-current > a {
    background-color: #f7f7fa;
  }
  .tab-layout > .tab_navi > .tab_list > li.is-current > a::before {
    background-color: #e60012;
  }
  .tab-layout[data-layout-sp="selectbox"] .tab_navi_2 {
    display: none;
  }
  .tab-layout > .tab_detail {
    padding-top: 30px;
  }
  .tab-layout.js-tabs > .tab_detail {
    display: none;
  }
  .tab-layout.has-anchor > .tab_detail {
    padding-top: 0;
  }
  .tab-layout > .tab_detail > *:first-child,
  .tab-layout > .tab_detail > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  /* v2 */
  .tab-layout-v2 {
    margin-top: 2.5em;
  }
  .tab-layout-v2 > .tab_navi {
  }
  .tab-layout-v2 > .tab_navi > .tab_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .tab-layout-v2 > .tab_navi > .tab_list > li {
    display: -webkit-flex;
    display: flex;
    margin-top: 1.5em;
    margin-left: 30px;
  }
  .tab-layout-v2[data-count-pc="2"] > .tab_navi > .tab_list > li { width: calc((100% -  30px) / 2); }
  .tab-layout-v2[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc((100% -  60px) / 3); }
  .tab-layout-v2[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc((100% -  90px) / 4); }
  .tab-layout-v2[data-count-pc="5"] > .tab_navi > .tab_list > li { width: calc((100% - 120px) / 5); }
  .tab-layout-v2[data-count-pc="6"] > .tab_navi > .tab_list > li { width: calc((100% - 150px) / 6); }
  .tab-layout-v2[data-count-pc="7"] > .tab_navi > .tab_list > li { width: calc((100% - 180px) / 7); }
  /* for IE11 */
  [data-browser="ie11"] .tab-layout-v2[data-count-pc="2"] > .tab_navi > .tab_list > li { width: calc(((100% -  30px) / 2) - 0.1px); }
  [data-browser="ie11"] .tab-layout-v2[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc(((100% -  60px) / 3) - 0.1px); }
  [data-browser="ie11"] .tab-layout-v2[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc(((100% -  90px) / 4) - 0.1px); }
  [data-browser="ie11"] .tab-layout-v2[data-count-pc="5"] > .tab_navi > .tab_list > li { width: calc(((100% - 120px) / 5) - 0.1px); }
  [data-browser="ie11"] .tab-layout-v2[data-count-pc="6"] > .tab_navi > .tab_list > li { width: calc(((100% - 150px) / 6) - 0.1px); }
  [data-browser="ie11"] .tab-layout-v2[data-count-pc="7"] > .tab_navi > .tab_list > li { width: calc(((100% - 180px) / 7) - 0.1px); }
  /* for Edge */
  [data-browser="edge"] .tab-layout-v2[data-count-pc="2"] > .tab_navi > .tab_list > li { width: calc(((100% -  30px) / 2) - 0.1px); }
  [data-browser="edge"] .tab-layout-v2[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc(((100% -  60px) / 3) - 0.1px); }
  [data-browser="edge"] .tab-layout-v2[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc(((100% -  90px) / 4) - 0.1px); }
  [data-browser="edge"] .tab-layout-v2[data-count-pc="5"] > .tab_navi > .tab_list > li { width: calc(((100% - 120px) / 5) - 0.1px); }
  [data-browser="edge"] .tab-layout-v2[data-count-pc="6"] > .tab_navi > .tab_list > li { width: calc(((100% - 150px) / 6) - 0.1px); }
  [data-browser="edge"] .tab-layout-v2[data-count-pc="7"] > .tab_navi > .tab_list > li { width: calc(((100% - 180px) / 7) - 0.1px); }
  /* for Edge 読み込み時の対応 */
  @supports (-ms-ime-align: auto) {
    .tab-layout-v2[data-count-pc="2"] > .tab_navi > .tab_list > li { width: calc(((100% -  30px) / 2) - 0.1px); }
    .tab-layout-v2[data-count-pc="3"] > .tab_navi > .tab_list > li { width: calc(((100% -  60px) / 3) - 0.1px); }
    .tab-layout-v2[data-count-pc="4"] > .tab_navi > .tab_list > li { width: calc(((100% -  90px) / 4) - 0.1px); }
    .tab-layout-v2[data-count-pc="5"] > .tab_navi > .tab_list > li { width: calc(((100% - 120px) / 5) - 0.1px); }
    .tab-layout-v2[data-count-pc="6"] > .tab_navi > .tab_list > li { width: calc(((100% - 150px) / 6) - 0.1px); }
    .tab-layout-v2[data-count-pc="7"] > .tab_navi > .tab_list > li { width: calc(((100% - 180px) / 7) - 0.1px); }
  }
  .tab-layout-v2[data-count-pc="2"] > .tab_navi > .tab_list > li:nth-child(-n+2),
  .tab-layout-v2[data-count-pc="3"] > .tab_navi > .tab_list > li:nth-child(-n+3),
  .tab-layout-v2[data-count-pc="4"] > .tab_navi > .tab_list > li:nth-child(-n+4),
  .tab-layout-v2[data-count-pc="5"] > .tab_navi > .tab_list > li:nth-child(-n+5),
  .tab-layout-v2[data-count-pc="6"] > .tab_navi > .tab_list > li:nth-child(-n+6),
  .tab-layout-v2[data-count-pc="7"] > .tab_navi > .tab_list > li:nth-child(-n+7) {
    margin-top: 0;
  }
  .tab-layout-v2[data-count-pc="2"] > .tab_navi > .tab_list > li:nth-child(2n+1),
  .tab-layout-v2[data-count-pc="3"] > .tab_navi > .tab_list > li:nth-child(3n+1),
  .tab-layout-v2[data-count-pc="4"] > .tab_navi > .tab_list > li:nth-child(4n+1),
  .tab-layout-v2[data-count-pc="5"] > .tab_navi > .tab_list > li:nth-child(5n+1),
  .tab-layout-v2[data-count-pc="6"] > .tab_navi > .tab_list > li:nth-child(6n+1),
  .tab-layout-v2[data-count-pc="7"] > .tab_navi > .tab_list > li:nth-child(7n+1) {
    margin-left: 0;
  }
  .tab-layout-v2 > .tab_navi > .tab_list > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 100%;
    padding: 0 0 15px 0;
    font-size: 2.2rem;
    line-height: 1.2;
    text-decoration: none;
    text-align: center;
  }
  .tab-layout-v2 > .tab_navi > .tab_list > li > a::before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #666;
    content: "";
  }
  .tab-layout-v2 > .tab_navi > .tab_list > li:not(.is-current) > a::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background-color: #e60012;
    content: "";
  }
  .tab-layout-v2 > .tab_navi > .tab_list > li:not(.is-current) > a:hover::after {
    width: 100%;
  }
  .tab-layout-v2 > .tab_navi > .tab_list > li.is-current > a {
    color: #e60012;
    font-weight: 700;
  }
  .tab-layout-v2 > .tab_navi > .tab_list > li.is-current > a::before {
    background-color: #e60012;
  }
  .tab-layout-v2 > .tab_detail {
    padding-top: 30px;
  }
  .tab-layout-v2.js-tabs > .tab_detail {
    display: none;
  }
  .tab-layout-v2 > .tab_detail > *:first-child,
  .tab-layout-v2 > .tab_detail > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ------------------------------------------------------
   * Component >>> Navi
  ------------------------------------------------------ */
  /* ----- navi-anchor ----- */
  .navi-anchor {
    width: 100vw;
    margin: 1.5em 0;
    margin-left: calc(50% - 50vw);
    background-color: #f7f7fa;
  }
  .navi-anchor .navi_inner {
    width: 1280px;
    max-width: 100%;
    margin: 0 auto;
    padding: 20px 40px;
  }
  .navi-anchor .navi_inner > li {
    display: -webkit-flex;
    display: flex;
  }
  .navi-anchor .navi_inner > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: 100%;
    padding: 22px 10px 25px;
    border: 1px solid #dfdfe3;
    background-color: #fff;
    text-decoration: none;
    text-align: center;
  }
  .navi-anchor .navi_inner > li > a.is-nolink {
    color: #333;
    text-decoration: none;
    pointer-events: none;
    cursor: default;
  }
  .navi-anchor .navi_inner > li > a::before {
    position: absolute;
    bottom: 14px;
    left: 50%;
    width: 10px;
    height: 10px;
    margin: 0 0 0 -5px;
    border-bottom: 1px solid #e60012;
    border-left: 1px solid #e60012;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    content: "";
  }
  .navi-anchor .navi_inner > li > a.is-nolink::before {
    display: none !important;
  }
  .navi-anchor .navi_inner > li[class*="type-philosophy"] > a::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 10px;
    width: 25px;
    height: 19px;
    margin: -10px 0 0 0;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 25px auto;
    content: "";
  }
  .navi-anchor .navi_inner > li.type-philosophy1 > a::after { background-image: url(../../about/philosophy/img/philosophy_ic01.png); }
  .navi-anchor .navi_inner > li.type-philosophy2 > a::after { background-image: url(../../about/philosophy/img/philosophy_ic02.png); }
  .navi-anchor .navi_inner > li.type-philosophy3 > a::after { background-image: url(../../about/philosophy/img/philosophy_ic03.png); }
  .navi-anchor .navi_inner > li.type-philosophy4 > a::after { background-image: url(../../about/philosophy/img/philosophy_ic04.png); }
  .navi-anchor .navi_inner > li.type-philosophy5 > a::after { background-image: url(../../about/philosophy/img/philosophy_ic05.png); }
  .navi-anchor .navi_inner > li > a .navi_label {
    display: inline-block;
  }
  .navi-anchor .navi_inner > li[class*="type-philosophy"] > a .navi_label {
    padding: 0 28px;
  }
  .navi-anchor .navi_inner > li > a:not(.is-nolink):hover {
    border-color: #777;
  }
  .navi-anchor .navi_inner > li > a:not(.is-nolink):hover::before {
    bottom: 11px;
  }
  
  /* ----- navi-local ----- */
  .navi-local {
    margin-top: 2.5em;
    padding: 30px 20px;
    background-color: #f7f7fa;
  }
  .navi-local .navi_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .navi-local .navi_list > li {
    width: calc((100% - 80px) / 5);
    margin-top: 1.25em;
    margin-left: 20px;
  }
  .navi-local .navi_list > li:nth-child(-n+5) {
    margin-top: 0;
  }
  .navi-local .navi_list > li:nth-child(5n+1) {
    margin-left: 0;
  }
  .navi-local .navi_list > li > a {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-align-items: center;
    align-items: center;
  }
  .navi-local .navi_list > li > a .navi_icon {
    margin-right: 20px;
  }
  .navi-local .navi_list > li > a .navi_icon img {
    width: 60px;
    height: 60px;
  }
  .navi-local .navi_list > li > a .navi_label {
    -webkit-flex: 1;
    flex: 1;
  }
  .navi-local .navi_list > li > a .navi_label::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  /* v2 */
  .navi-local-v2 {
    margin-top: 2.5em;
  }
  .navi-local-v2 .navi_list > li.is-current > a {
    color: #333;
    font-weight: 700;
    text-decoration: none;
    cursor: default;
  }
  .navi-local-v2 .navi_list > li:not(.is-current) > a::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  
  /* ------------------------------------------------------
   * Component >>> Index
  ------------------------------------------------------ */
  [class*="index-layout"] .index_caption > *:first-child,
  [class*="index-layout"] .index_caption > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- index-layout ----- */
  .index-layout {
    text-align: left;
  }
  .index-layout > .block {
    border: 1px solid #dfdfe3;
    background-color: #fff;
    text-decoration: none;
  }
  .index-layout > .block .index_image {
    text-align: center;
  }
  .index-layout > .block .index_caption {
    position: relative;
    padding: 14px 29px;
    text-align: center;
  }
  .index-layout > .block .index_caption > *:first-child,
  .index-layout > .block .index_caption > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout > a.block .index_caption::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 14px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout > a.block[class*="a-"] .index_caption::after {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout > a.block.a-pdf .index_caption::after {
    margin-top: -7px;
  }
  .index-layout > .block .index_title {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: center;
    align-items: center;
    text-align: left;
  }
  .index-layout > .block .index_title .index_title_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    width: 100%;
  }
  .index-layout > .block .index_title .index_title_list > .index_title_item {
    width: calc((100% - 20px) / 2);
    margin-top: .75em;
    margin-left: 20px;
    font-size: 1.6rem;
  }
  /* for IE11 */
  [data-browser="ie11"] .index-layout > .block .index_title .index_title_list > .index_title_item {
    width: calc(((100% - 20px) / 2) - 0.1px);
  }
  /* for Edge */
  [data-browser="edge"] .index-layout > .block .index_title .index_title_list > .index_title_item {
    width: calc(((100% - 20px) / 2) - 0.1px);
  }
  .index-layout > .block .index_title .index_title_list > .index_title_item:nth-child(-n+2) {
    margin-top: 0;
  }
  .index-layout > .block .index_title .index_title_list > .index_title_item:nth-child(2n+1) {
    margin-left: 0;
  }
  .index-layout > .block .index_title .index_title_list > .index_title_item > a::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout > .block .index_title .index_title_list > .index_title_item > a[class*="a-"]::after {
    right: 0;
    margin: 0 0 0 8px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout > a.block:hover .index_title,
  .index-layout > .block .index_title .index_title_list > .index_title_item > a:hover {
    color: #e60012;
    text-decoration: underline;
  }
  .index-layout > .block .index_image_2 {
    position: relative;
    text-align: center;
  }
  .index-layout > .block .index_image_2 .index_title_2 {
    position: absolute;
    line-height: 1.1;
  }
  .index-layout > .block .index_image_2 .index_title_2.type-group-japan {
    bottom: 15px;
    left: 25px;
    color: #fff;
  }
  /* v2 */
  .index-layout-v2 {
    text-align: left;
  }
  .index-layout-v2 > .block {
    text-decoration: none;
    outline: none;
    background-color: #fff;
  }
  .index-layout-v2 > .block .index_image {
    position: relative;
    text-align: center;
  }
  .index-layout-v2 > .block .index_image img{
    width: 221px;
    height: 150px;
  }
  .index-layout-v2 > a.block .index_image::before {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    margin: -24px 0 0 -34px;
  }
  .index-layout-v2 > a.block .index_image::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 3;
    width: 0;
    height: 0;
    margin: -9px 0 0 -7px;
    border-width: 9px 18px;
    border-style: solid;
    border-color: transparent transparent transparent #fff;
 /*   content: "";*/
  }
  .index-layout-v2 > .block .index_caption {
    margin-top: .75em;
  }
  .index-layout-v2 > .block .index_caption > *:first-child,
  .index-layout-v2 > .block .index_caption > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout-v2 > .block .index_title {
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.25;
  }
  .index-layout-v2 > .block .index_description {
    margin-top: .5em;
  }
  .index-layout-v2 .link-button {
    margin-top: .75em;
  }
  .index-layout-v2 .link-button a {
    min-width: 190px;
  }
  .index-layout-v2 > a.block:hover .index_image::after {
    border-left-color: #e60012;
  }
  .index-layout-v2 > a.block:hover .index_title {
    color: #e60012;
    text-decoration: underline;
  }
  /* v3 */
  .index-layout-v3 {
    text-align: left;
  }
  .index-layout-v3 > .block {
    text-decoration: none;
  }
  .index-layout-v3 > .block .index_image {
    float: left;
    width: 220px;
    margin-right: 36px;
  }
  .index-layout-v3 > .block .index_caption {
    overflow: hidden;
  }
  .index-layout-v3 > .block .index_caption > *:first-child,
  .index-layout-v3 > .block .index_caption > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout-v3 > a.block .index_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v3 > a.block[class*="a-"] .index_title::after {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout-v3 > .block .index_description {
    margin-top: 1em;
    font-size: 1.6rem;
  }
  .index-layout-v3 > a.block:hover .index_title {
    color: #e60012;
    text-decoration: underline;
  }
  /* v4 */
  .index-layout-v4 {
    text-align: left;
  }
  .index-layout-v4 > .block {
    padding: 20px 0;
    border-top: 1px solid #dfdfe3;
    border-bottom: 1px solid #dfdfe3;
    background-color: #fff;
    text-decoration: none;
  }
  .index-layout-v4 > .block .index_caption {
  }
  .index-layout-v4 > .block .index_caption > *:first-child,
  .index-layout-v4 > .block .index_caption > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout-v4 > a.block .index_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v4 > a.block[class*="a-"] .index_title::after {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout-v4 > .block .index_description {
    margin-top: .5em;
    font-size: 1.6rem;
  }
  .index-layout-v4 > a.block:hover .index_title {
    color: #e60012;
    text-decoration: underline;
  }
  /* v5 */
  .index-layout-v5 {
    text-align: left;
  }
  .index-layout-v5 > .block {
    text-decoration: none;
  }
  .index-layout-v5 > .block .index_image {
    text-align: center;
  }
  .index-layout-v5 > .block .index_caption {
    margin-top: .75em;
  }
  .index-layout-v5 > .block .index_caption > *:first-child,
  .index-layout-v5 > .block .index_caption > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout-v5 > .block .index_title {
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.3;
  }
  .index-layout-v5 > a.block .index_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v5 > a.block[class*="a-"] .index_title::after {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout-v5 > a.block:hover .index_title {
    color: #e60012;
    text-decoration: underline;
  }
  /* v6 */
  .index-layout-v6 {
    text-align: left;
  }
  .index-layout-v6 > .block {
    text-decoration: none;
  }
  .index-layout-v6 > .block .index_image {
    text-align: center;
  }
  .index-layout-v6 > .block .index_caption {
    margin-top: .75em;
  }
  .index-layout-v6 > .block .index_caption > *:first-child,
  .index-layout-v6 > .block .index_caption > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout-v6 > .block .index_title {
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.3;
  }
  .index-layout-v6 > a.block .index_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v6 > a.block[class*="a-"] .index_title::after {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout-v6 > a.block:hover .index_title {
    color: #e60012;
    text-decoration: underline;
  }
  /* v7 */
  .index-layout-v7 {
    text-align: left;
  }
  .index-layout-v7 > .block {
    padding: 0 0 30px 0;
    border-bottom: 1px solid #eee;
    background-color: #fff;
    text-decoration: none;
  }
  .index-layout-v7 > .block .index_caption {
  }
  .index-layout-v7 > .block .index_caption > *:first-child,
  .index-layout-v7 > .block .index_caption > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout-v7 > .block .index_title {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.25;
  }
  .index-layout-v7 > a.block .index_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v7 > a.block[class*="a-"] .index_title::after {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout-v7 > .block .index_description {
    margin-top: .75em;
  }
  .index-layout-v7 > a.block:hover .index_title {
    color: #e60012;
    text-decoration: underline;
  }
  /* v8 */
  .index-layout-v8 {
    text-align: left;
  }
  .index-layout-v8 > .block {
    text-decoration: none;
  }
  .index-layout-v8 > .block .index_image {
    text-align: center;
  }
  .index-layout-v8 > .block .index_caption {
    margin-top: .75em;
  }
  .index-layout-v8 > .block .index_caption > *:first-child,
  .index-layout-v8 > .block .index_caption > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .index-layout-v8 > .block .index_title {
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.3;
  }
  .index-layout-v8 > a.block .index_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v8 > a.block[class*="a-"] .index_title::after {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout-v8 > a.block:hover .index_title {
    color: #e60012;
    text-decoration: underline;
  }
  /* v9 */
  .index-layout-v9 {
    text-align: left;
  }
  .index-layout-v9 > .index_heading > .block {
    position: relative;
    border: 1px solid #dfdfe3;
    background-color: #fff;
    text-decoration: none;
    overflow: hidden;
  }
  .index-layout-v9 > .index_heading > .block .index_image {
    text-align: center;
  }
  .index-layout-v9 > .index_heading > .block .index_image img {
    width: 100%;
  }
  .index-layout-v9 > .index_heading > .block .index_caption {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: rgba(255,255,255,.85);
  }
  .index-layout-v9 > .index_heading > a.block .index_caption::before {
    position: absolute;
    top: 50%;
    right: 16px;
    width: 10px;
    height: 10px;
    margin-top: -5px;
    margin-right: 2px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v9 > .index_heading > .block .index_caption .index_caption_inner {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    height: calc(3em + 2px * 2);
    padding: 5px 30px 5px 20px;
  }
  .index-layout-v9 > .index_heading > .block .index_title {
    width: 100%;
    font-size: 2.0rem;
    font-weight: 500;
    line-height: 1.2;
  }
  .index-layout-v9 > .index_heading > .block .index_title .is-smaller {
    font-size: 1.6rem;
  }
  .index-layout-v9 > .index_heading > a.block:hover .index_title {
    color: #e60012;
    text-decoration: underline;
  }
  .index-layout-v9 > .index_links {
    margin-top: 1.5em;
  }
  .index-layout-v9 > .index_links > li {
    margin-top: .75em;
    font-size: 1.6rem;
  }
  .index-layout-v9 > .index_links > li:nth-child(-n+1) {
    margin-top: 0;
  }
  .index-layout-v9 > .index_links > li > a {
    display: block;
    position: relative;
    padding: 0 35px 0 0;
  }
  .index-layout-v9 > .index_links > li > a::before {
    position: absolute;
    top: 50%;
    right: 15px;
    width: 10px;
    height: 10px;
    margin-top: -4px;
    margin-right: 2px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .index-layout-v9 > .index_links > li > a[class*="a-"]::before {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .index-layout-v9 > .index_links > li > a.a-blank::before {
    margin-top: -5px;
  }
  .index-layout-v9 > .index_links > li > a.a-pdf::before {
    margin-top: -6px;
  }
  
  /* ----- products-index-layout ----- */
  .products-index-layout {
    margin-top: 1.5em;
    border: 1px solid #dfdfe3;
  }
  .products-index-layout .index_heading {
    position: relative;
    padding: 16px 60px 16px 20px;
  }
  .products-index-layout .index_heading .index_title {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
  }
  .products-index-layout .index_heading .index_title a::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .products-index-layout .index_heading .index_title a[class*="a-"]::after {
    right: 0;
    margin: 0 0 0 8px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .products-index-layout .index_heading .index_title a:hover {
    color: #e60012;
    text-decoration: underline;
  }
  .products-index-layout .index_heading .index_toggle {
    position: absolute;
    top: 50%;
    right: 14px;
    /* margin: -16px 0 0 0;*/
    border: 2px solid #e60012;
    padding: 0px 20px 10px;
    border-radius: 10px;
  }
  .addcas {
    display: inline-block;
    color:#e60012; 
  }
  .products-index-layout .index_heading .index_toggle .index_toggle_trigger {
    position: relative;
    width: 132px;
    height: 32px;
    cursor: pointer;
    display: inline-block; 
    top: 10px;
  }
  .products-index-layout .index_heading .index_toggle .index_toggle_trigger::before,
  .products-index-layout .index_heading .index_toggle .index_toggle_trigger::after {
    position: absolute;
    top: 35%;
    left: 90%;
    width: 20px;
    height: 2px;
    margin: -1px 0 0 -10px;
    background-color: #e60012;
    content: "";
  }
  .products-index-layout .index_heading .index_toggle .index_toggle_trigger::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .products-index-layout .index_heading .index_toggle .index_toggle_trigger:hover {
    /*background-color: #f1f1f2;*/
  }
  .products-index-layout .index_heading .index_toggle .index_toggle_trigger.is-active::before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .products-index-layout .index_content {
    padding: 30px 20px 30px;
        background-color: #eee;
  }
  .products-index-layout .index_content > *:first-child,
  .products-index-layout .index_content > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .products-index-layout .index_content .index_sgds {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin: 1em -10px -10px 0;
  }
  .products-index-layout .index_content .index_sgds > li {
    margin: 0 10px 10px 0;
  }
  .products-index-layout .index_content .index_links {
    display: -webkit-flex;
    display: flex;
    margin: 1em -36px 0 0;
  }
  .products-index-layout .index_content .index_links > li {
    width: 273px;
    margin-right: 36px;
  }
  .products-index-layout .index_content .index_links > li > *:first-child,
  .products-index-layout .index_content .index_links > li > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .products-index-layout .index_content .index_links > li [class*="link-button-"] a {
    width: 100%;
  }
  .products-index-layout .index_content .index_links > li .link-button-v4 a {
    font-size: 2.2rem;
  }
  .products-index-layout .index_content .column-media[data-media-size="1/4"] > .column_image {
    width: 273px;
  }
  .products-index-layout .column-media > .column_image > *:first-child {
    margin-top: 0;
  }
  
  /* ------------------------------------------------------
   * Component >>> Other
  ------------------------------------------------------ */
  /* ----- article-information ----- */
  .article-information > *:last-child {
    margin-bottom: 0 !important;
  }
  .article-information .article_time {
    margin: 1.5em 0;
    text-align: right;
  }
  .article-information .article_time + * {
    margin-top: 1.5em;
  }
  .article-information .article_wysiwyg {
    margin: 2em 0;
  }
  .article-information .article_wysiwyg > *:first-child,
  .article-information .article_wysiwyg > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- article-news ----- */
  .article-news > *:last-child {
    margin-bottom: 0 !important;
  }
  .article-news .article_time {
    margin: 1.5em 0;
  /*  text-align: right;*/
  }
  .article-news .article_time + * {
    margin-top: 1.5em;
  }
  .article-news .article_wysiwyg {
    margin: 2em 0;
  }
  .article-news .article_wysiwyg > *:first-child,
  .article-news .article_wysiwyg > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  
  /* ----- news-compo ----- */
  .news-compo {
    margin-top: 2.5em;
    border-top: 1px solid #eee;
  }
  .news-compo .news_no_article {
    padding-top: 1em;
    text-align: center;
  }
  .news-compo .news_article {
    border-bottom: 1px solid #eee;
  }
  .news-compo .block {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    position: relative;
    padding: 25px 0 24px;
    text-decoration: none;
    outline: none;
  }
  .news-compo a.block {
    padding-right: 30px;
  }
  .news-compo a.block::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 13px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .news-compo a.block[class*="a-"]::after {
    right: 10px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .news-compo a.block.a-pdf::after {
    margin-top: -7px;
  }
  .news-compo[data-layout-pc="row"] .news_detail {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex: 1;
    flex: 1;
  }
  .news-compo .news_property {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: baseline;
    align-items: baseline;
  }
  .news-compo .news_date {
    display: inline-block;
    min-width: 9.5em;
    font-size: 1.7rem;
    font-weight: 300;
    white-space: nowrap;
    vertical-align: middle;
  }
  .news-compo .news_icon {
    display: -webkit-inline-box;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    margin-right: 15px;
    vertical-align: middle;
  }
  .news-compo .news_icon .icon-news {
    position: relative;
    top: 0;
  }
  .news-compo .news_icon .icon-news:nth-of-type(n+2) {
    margin-top: .5em;
  }
  .news-compo .news_title {
    -webkit-flex: 1;
    flex: 1;
  }
  .news-compo a.block:hover .news_title {
    color: #e60012;
    text-decoration: underline;
  }
  
  /* ----- news-select-wrap ----- */
  .news-select-wrap {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    align-items: center;
    padding-top: 30px;
  }
  .news-select-wrap + .news-compo {
    margin-top: 20px;
  }
  .news-select-wrap .news_select_pulldown {
    position: relative;
    width: 250px;
    margin-left: 1px;
  }
  .news-select-wrap .news_select_pulldown::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 10px;
    width: 10px;
    height: 10px;
    margin: -7px 0 0 0;
    border-right: 2px solid #ff2424;
    border-bottom: 2px solid #ff2424;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    cursor: pointer;
    pointer-events: none;
  }
  .news-select-wrap .news_select_year {
    width: 100%;
    padding: 10px 30px 11px 15px;
    border: 1px solid #dfdfe3;
    font-size: 1.8rem;
    font-weight: normal;
    cursor: pointer;
  }
  .news-select-wrap .news_select_year::-ms-expand {
    display: none;
  }
  .news-select-wrap .news_select_rss .a-rss {
    position: relative;
    padding-left: 32px;
  }
  .news-select-wrap .news_select_rss .a-rss::before {
    position: absolute;
    top: 5px;
    left: 0;
  }
  
  /* ----- dumap-compo ----- */
  .dumap-compo {
    margin-top: 2.5em;
    overflow-x: auto;
    padding-bottom: 8px;
  }
  .dumap-compo::-webkit-scrollbar {
    height: 12px;
  }
  .dumap-compo::-webkit-scrollbar-track {
    border-radius: 12px;
    background: #f1f1f1;
  }
  .dumap-compo::-webkit-scrollbar-thumb {
    border-radius: 12px;
    background: #888;
  }
  .dumap-compo .dumap_canvas {
    position: relative;
    width: 582px;
    height: 472px;
  }
  .dumap-compo .dumap_canvas iframe {
    position: absolute;
    top: 0;
    left: 0;
  }
  
  /* ----- banner-compo ----- */
  .banner-compo {
    margin-top: 2.5em;
  }
  .banner-compo > *:first-child,
  .banner-compo > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .banner-compo .banner_list {
    margin-top: 1em;
  }
  /* v2 */
  .banner-compo-v2 {
    margin-top: 2em;
  }
  .banner-compo-v2 > .block {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    height: 160px;
    padding: 0 4.5%;
    background-color: #f7f7fa;
    text-decoration: none;
  }
  .banner-compo-v2 > .block .banner_caption {
    position: relative;
    z-index: 2;
  }
  .banner-compo-v2 > .block .banner_title {
    color: #e60012;
    font-size: 2.4rem;
  }
  .banner-compo-v2 > .block .banner_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .banner-compo-v2 > .block .banner_lead {
    margin-top: .5em;
  }
  .banner-compo-v2 > .block .banner_image {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
  }
  .banner-compo-v2 > .block .banner_image img {
    height: 160px;
  }
  
  /* ----- slider-gallery-compo ----- */
  .slider-gallery-compo {
    margin-top: 2.5em;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos {
    position: relative;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .gallery_carousel_item img {
    margin: 0 auto;
    width: 100%;
    border: 1px solid #eee;
    border-radius: 5px;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow {
    position: absolute;
    bottom: 5px;
    z-index: 2;
    width: 10px;
    height: 10px;
    margin: 0;
    padding: 0;
    border: none;
    background: none;
    text-indent: -9999em;
    outline: none;
    cursor: pointer;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-prev {
    left: 50%;
    margin-left: -100px;
    border-top: 1px solid #696969;
    border-left: 1px solid #696969;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-next {
    right: 50%;
    margin-right: -100px;
    border-right: 1px solid #696969;
    border-bottom: 1px solid #696969;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos.is-maximum .slick-arrow.slick-prev {
    left: 3px;
    margin-left: 0;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos.is-maximum .slick-arrow.slick-next {
    right: 3px;
    margin-right: 0;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    margin-top: 1em;
    padding: 0 15px;
    text-align: center;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots > li {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    height: 20px;
    padding: 0 15px;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots > li button {
    width: 10px;
    height: 10px;
    margin: 0;
    padding: 0;
    border: none;
    background-color: #ccc;
    border-radius: 50%;
    text-indent: -9999em;
    outline: none;
    cursor: pointer;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots > li button:hover {
    background-color: #333;
  }
  .slider-gallery-compo .gallery_carousel .gallery_carousel_photos .slick-dots > li.slick-active button {
    background-color: #e60012;
  }
  /* v2 */
  .slider-gallery-compo-v2 {
    margin-top: 2.5em;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos {
    position: relative;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .gallery_carousel_item img {
    margin: 0 auto;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
    position: absolute;
    top: 105px;
    z-index: 2;
    margin: 0;
    padding: 0;
    border: none;
    background-color: transparent;
    text-indent: -9999em;
    outline: none;
    cursor: pointer;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-prev {
    left: 6px;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow.slick-next {
    right: 6px;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow:hover {
    border-color: #333;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-top: .75em;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
    width: calc((100% - 28px) / 3);
    margin-top: .5em;
    margin-left: 14px;
    opacity: .5;
    cursor: pointer;
  }
  /* for IE11 */
  [data-browser="ie11"] .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li {
    width: calc(((100% - 28px) / 3) - 0.1px);
  }
  /* for edge */
  [data-browser="edge"] .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li {
    width: calc(((100% - 28px) / 3) - 0.1px);
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li:nth-child(-n+3) {
    margin-top: 0;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li:nth-child(3n+1) {
    margin-left: 0;
  }
  /* for IE11 hack */
  _:-ms-lang(x)::-ms-backdrop, .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li img {
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
    min-width: 1px;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li:hover {
    opacity: .7;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-dots > li.slick-active {
    opacity: 1;
  }
  
  /* ----- contact-compo ----- */
  .contact-compo {
    margin-top: 2.5em;
  }
  .contact-compo .contact_box {
    display: table;
    width: 100%;
    border: 1px solid #dfdfe3;
  }
  .contact-compo .contact_box > .contact_heading {
    display: table-cell;
    width: 50%;
    padding: 40px 20px;
    background-color: #f7f7fa;
    text-align: center;
    vertical-align: middle;
  }
  .contact-compo .contact_box > .contact_heading .contact_title {
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.4;
  }
  .contact-compo .contact_box > .contact_content {
    display: table-cell;
    width: 50%;
    padding: 40px 20px;
    text-align: center;
    vertical-align: middle;
  }
  .contact-compo .contact_box > .contact_content > *:first-child,
  .contact-compo .contact_box > .contact_content > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .contact-compo .contact_box > .contact_content .link-button-v2 a {
    min-width: 376px;
    font-size: 2.2rem;
  }
  .contact-compo .contact_box > .contact_content .link-button-v2 a > .link_label {
    display: block;
  }
  
  /* ----- group-lead-compo ----- */
  .group-lead-compo {
    margin-top: 2.5em;
    padding: 20px 20px 30px;
    background-color: #f7f7fa;
  }
  .group-lead-compo > *:first-child,
  .group-lead-compo > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .group-lead-compo .lead_text {
    text-align: center;
  }
  .group-lead-compo .link-button-v3 {
    margin-top: 1.25em;
  }
  .group-lead-compo .link-button-v3 a {
    min-width: 450px;
    padding: 15px 20px;
    font-size: 2.2rem;
  }
  .group-lead-compo .link-button-v3 a > .link_label {
    display: block;
  }
  
  /* ----- related-compo ----- */
  .related-compo {
    margin-top: 2.5em;
  }
  .related-compo .related_box {
    padding: 24px 29px;
    border: 1px solid #dfdfe3;
    background-color: #fff;
  }
  .related-compo .related_box > *:first-child,
  .related-compo .related_box > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .related-compo .related_box .related_title {
    font-weight: 700;
    line-height: 1.2;
  }
  .related-compo .related_box .related_title + * {
    margin-top: 1em;
  }
  /* v2 */
  .related-compo-v2 {
    width: 100vw;
    margin-top: 4em;
    margin-left: calc(50% - 50vw);
    padding: 40px 0 100px;
    background-color: #f7f7fa;
  }
  .related-compo-v2 .related_inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
  }
  .related-compo-v2 .related_inner > *:first-child,
  .related-compo-v2 .related_inner > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .related-compo-v2 .related_inner .related_title {
    font-size: 2.8rem;
  }
  .related-compo-v2 .related_inner .related_title + * {
    margin-top: 1em;
  }
  .related-compo-v2 .related_inner .related_links_2 .block {
    text-decoration: none;
  }
  .related-compo-v2 .related_inner .related_links_2 .block .related_links_image {
    text-align: center;
  }
  .related-compo-v2 .related_inner .related_links_2 .block .related_links_title {
    margin-top: .5em;
  }
  .related-compo-v2 .related_inner .related_links_2 a.block .related_links_title::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .related-compo-v2 .related_inner .related_links_2 a.block[class*="a-"] .related_links_title::after {
    right: 0;
    margin: 0 0 0 8px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .related-compo-v2 .related_inner .related_links_2 a.block:hover .related_links_title {
    color: #e60012;
    text-decoration: underline;
  }
  
  /* ----- video-iframe-compo ----- */
  .video-iframe-compo {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .video-iframe-compo iframe {
    width: 720px !important;
    height: 400px;
    border: none;
    overflow: auto;
  }
  
  /* ----- stock-iframe-compo ----- */
  .stock-iframe-compo {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .stock-iframe-compo iframe {
    width: 1200px !important;
    height: 800px;
    border: none;
    overflow: auto;
  }
  
  /* ----- grade-iframe-compo ----- */
  .grade-iframe-compo {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .grade-iframe-compo iframe {
    width: 1200px !important;
    border: none;
    overflow: auto;
  }
  
  /* ----- yellowcard-iframe-compo ----- */
  .yellowcard-iframe-compo {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .yellowcard-iframe-compo iframe {
    width: 1200px !important;
    border: none;
    overflow: auto;
  }
  
  /* ----- about-layout ----- */
  .about-layout {
    margin-top: 3.33em;
  }
  .about-layout .banner_block {
    position: relative;
    display: block;
    text-decoration: none;
  }
  .about-layout .banner_flex_wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 100%;
    z-index: 2;
  }
  .about-layout .banner_flex_wrapper > .banner_flex_outer {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .about-layout .banner_flex_wrapper > .banner_flex_outer > .banner_flex_inner {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 100%;
  }
  .about-layout .banner_caption {
    width: 100%;
    padding: 0 55px;
  }
  .about-layout .banner_title {
    color: #e60012;
    font-size: 3.6rem;
  }
  .about-layout .banner_title .banner_title_sub {
    padding: 0 0 0 .5em;
    font-size: 2.2rem;
  }
  .about-layout .banner_title .banner_title_sub::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .about-layout .banner_lead {
    margin-top: .5em;
  }
  
  /* ----- officer-layout ----- */
  .officer-layout {
    margin: 2.8em 0 0 !important;
  }
  .officer-layout + .officer-layout {
    margin-top: 4rem !important;
  }
  .officer-layout .officer_text > dt {
    font-size: 1.5rem;
  }
  .officer-layout .officer_text > dd {
    margin: .5em 0 0;
    padding: 0 14px 0 0;
  }
  .officer-layout .officer_text > dd > .text_kana {
    display: block;
    font-size: 1.2rem;
  }
  .officer-layout .officer_button {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    min-height: 100%;
    z-index: 2;
  }
  .officer-layout .officer_button > li {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .officer-layout .officer_button > li > a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 100%;
    text-decoration: none;
  }
  .officer-layout .officer_button > li > a > span {
    position: relative;
    padding: 0 0 20px;
    font-size: 1.5rem;
  }
  .officer-layout .officer_button > li > a > span::before {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 10px;
    height: 10px;
    margin-left: -7px;
    border-top-width: 1px;
    border-top-style: solid;
    border-right-width: 1px;
    border-right-style: solid;
    content: "";
  }
  .officer-layout .officer_button > li.type-close {
    opacity: 0;
  }
  .officer-layout .officer_button > li.type-close > a {
    background-color: #f7f7fa;
    border-top: 2px solid #e60012;
  }
  .officer-layout .officer_button > li.type-close > a > span::before {
    border-top-color: #e60012;
    border-right-color: #e60012;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .officer-layout .officer_button > li.type-open > a {
    background-color: #444444;
    color: #fff;
  }
  .officer-layout .officer_button > li.type-open > a > span::before {
    border-top-color: #fff;
    border-right-color: #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  .officer-layout .officer_table {
    width: 100%;
    margin: 1.7em 0 0;
    border-top: 1px solid #dfdfe3;
  }
  .officer-layout .officer_table > * > tr > * {
    padding: 10px 0;
    border-bottom: 1px solid #dfdfe3;
    vertical-align: top;
    text-align: left;
  }
  .officer-layout .officer_table > tbody > tr > th {
    padding-left: 50px;
    padding-right: 40px;
    font-weight: normal;
    white-space: nowrap;
  }
  .officer-layout .officer_table > tbody > tr > td {
    width: 99%;
    padding-right: 50px;
  }
  .officer-layout .officer_column {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    z-index: 2;
  }
  .officer-layout .officer_column > .column_item {
    overflow: hidden;
    width: calc((100% - 35px * 4) / 5);
    margin: 0 35px 0 0;
    background-color: #fff;
    border: 1px solid #dfdfe3;
    box-sizing: border-box;
  }
  /* for IE11 */
  [data-browser="ie11"] .officer-layout .officer_column > .column_item {
    width: calc(((100% - 35px * 4) / 5) - 0.1px);
  }
  /* for Edge */
  [data-browser="edge"] .officer-layout .officer_column > .column_item {
    width: calc(((100% - 35px * 4) / 5) - 0.1px);
  }
  .officer-layout .officer_column > .column_item:last-child {
    margin-right: 0;
  }
  .officer-layout .officer_column_2 > .column_text {
    position: relative;
    padding: 15px;
    box-sizing: border-box;
  }
  .officer-layout .officer_column_2 > .column_text::before {
    position: absolute;
    top: 50%;
    right: 8px;
    width: 10px;
    height: 10px;
    margin-top: -7px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .officer-layout .officer_column_3 {
    display: flex;
    justify-content: center;
  }
  .officer-layout .officer_column_3 > .column_text {
    width: 65.66%;
  }
  .officer-layout .officer_column_3 > .column_image {
    width: 31.33%;
    padding: 0 0 0 36px;
  }
  .officer-layout .officer_toggle {
    overflow: hidden;
    height: 0;
    position: relative;
    margin: -1px calc(((100vw - 100%) / 2) * -1) 0;
    padding: 0 calc((100vw - 100%) / 2);
    z-index: 1;
  }
  .officer-layout .officer_frame {
    margin: 0 calc(((100vw - 100%) / 2) * -1);
    padding: 50px calc((100vw - 100%) / 2);
    background-color: #f7f7fa;
    border: 1px solid #dfdfe3;
    border-right: none;
    border-left: none;
  }
  .officer-layout .officer_frame .officer_text {
    padding: 0 50px;
  }
  .officer-layout .officer_frame .officer_text > dt {
    font-size: 1.8rem;
  }
  .officer-layout .officer_frame .officer_text > dd {
    margin-top: 1em;
    padding-right: 0;
    display: flex;
    align-items: baseline;
  }
  .officer-layout .officer_frame .officer_text > dd > .text_name {
    font-size: 3.2rem;
    line-height: 1.1;
  }
  .officer-layout .officer_frame .officer_text > dd > .text_kana {
    padding: 0 0 0 1.1em;
    font-size: 1.4rem;
  }
  .officer-layout .officer_column > .column_item.is-current {
    border-bottom-color: #f7f7fa;
  }
  .officer-layout .officer_column > .column_item.is-active .officer_button,
  .officer-layout .officer_column > .column_item.is-current .officer_button {
    top: 0;
  }
  .officer-layout .officer_column > .column_item.is-current .officer_button > li.type-open {
    opacity: 0;
    z-index: 1;
  }
  .officer-layout .officer_column > .column_item.is-current .officer_button > li.type-close {
    opacity: 1;
    z-index: 2;
  }
  /* v2 */
  .officer-layout-v2 {
    margin: 2.8em 0 0 !important;
  }
  .officer-layout-v2 table.officer_table {
    width: 100%;
    border-top: 1px solid #dfdfe3;
  }
  .officer-layout-v2 table.officer_table > * > tr > * {
    padding: 20px 30px;
    border-right: 1px solid #dfdfe3;
    border-bottom: 1px solid #dfdfe3;
    vertical-align: top;
    font-size: 1.6rem;
    text-align: left;
  }
  .officer-layout-v2 table.officer_table > * > tr > *:last-child {
    border-right: none;
  }
  .officer-layout-v2 table.officer_table > tbody > tr > th {
    width: 21.66%;
    background-color: #f7f7fa;
    font-weight: 700;
  }
  .officer-layout-v2 table.officer_table > tbody > tr > th.cell-style1 {
    padding-left: 60px;
  }
  .officer-layout-v2 table.officer_table > tbody > tr > th.cell-style2 {
    border-bottom-color: #f7f7fa;
  }
  .officer-layout-v2 table.officer_table > tbody > tr > td.cell-style3 {
    border-bottom-color: #fff;
  }
  .officer-layout-v2 table.officer_table > tbody > tr > th.cell-style2,
  .officer-layout-v2 table.officer_table > tbody > tr > td.cell-style3 {
    padding-bottom: 0;
  }
  
  /* ----- location-compo ----- */
  .location-compo {
    margin-top: 2.5em;
  }
  .location-compo + .location-compo {
    margin-top: -1px;
  }
  .location-compo .location_caption {
  }
  .location-compo .location_caption .location_company {
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.25;
  }
  .location-compo + .location-compo .location_caption .location_company {
    margin-top: 1.5em;
  }
  .location-compo .location_caption .location_company > a::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .location-compo .location_caption .location_company > a[class*="a-"]::after {
    right: 0;
    margin: 0 0 0 8px;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .location-compo .location_caption .location_description {
    margin-top: .5em;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .location-compo .location_table {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    width: 100%;
    border-top: 1px solid #e0e0e4;
    border-bottom: 1px solid #e0e0e4;
  }
  .location-compo .location_table + .location_table {
    margin-top: -1px;
  }
  .location-compo .location_caption + .location_table {
    margin-top: 1em;
  }
  .location-compo .location_table > .location_table_head {
    width: 21.6%;
    padding: 25px;
    border-right: 1px solid #e0e0e4;
    background-color: #f7f7fa;
  }
  .location-compo .location_table > .location_table_data {
    display: table;
    table-layout: fixed;
    width: calc(100% - 21.6%);
    background-color: #fff;
  }
  .location-compo .location_table .location_title {
    font-size: 1.6rem;
    font-weight: 700;
  }
  .location-compo .location_table .location_info {
    display: table-row;
    width: 100%;
  }
  .location-compo .location_table .location_info > [class*="location_info_"] {
    display: table-cell;
    padding: 25px;
    text-align: left;
    vertical-align: middle;
  }
  .location-compo .location_table .location_info + .location_info > [class*="location_info_"] {
    border-top: 1px solid #e0e0e4;
  }
  .location-compo .location_table .location_info > [class*="location_info_"] + [class*="location_info_"] {
    border-left: 1px solid #e0e0e4;
  }
  .location-compo .location_table .location_info > [class*="location_info_"] > *:first-child,
  .location-compo .location_table .location_info > [class*="location_info_"] > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .location-compo .location_table .location_info > .location_info_place {
    width: 68%;
    padding-left: 40px;
  }
  .location-compo .location_table .location_info > .location_info_contact {
  }
  .location-compo .location_table .location_name {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .location-compo .location_table .location_address {
    margin-top: .5em;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .location-compo .location_table .location_links {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    margin: .75em -20px -.75em 0;
  }
  .location-compo .location_table .location_links > li {
    margin-right: 20px;
    margin-bottom: .75em;
  }
  .location-compo .location_table .location_links > li > a {
    display: inline-block;
    position: relative;
    min-width: 160px;
    max-width: 100%;
    padding: 8px 12px;
    border: 1px solid #dfdfe3;
    background-color: #fff;
    text-align: center;
    text-decoration: none;
  }
  .location-compo .location_table .location_links > li > a:hover {
    border-color: #fff;
    box-shadow: 0 5px 10px 2px rgba(0,0,0,.15);
  }
  .location-compo .location_table .location_links > li > a > .location_links_label {
    display: inline-block;
    position: relative;
    padding: 0 25px;
  }
  .location-compo .location_table .location_links > li > a.a-map > .location_links_label {
    padding-left: 5px;
  }
  .location-compo .location_table .location_links > li > a > .location_links_label::after {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 3px;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 0;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .location-compo .location_table .location_links > li > a[class*="a-"] > .location_links_label::after {
    right: 0;
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .location-compo .location_table .location_links > li > a.a-map > .location_links_label::after {
    margin-top: -11px;
  }
  .location-compo .location_table .location_tel {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  
  /* ----- philosophy-compo ----- */
  .philosophy-compo {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    margin-top: 2.5em;
  }
  .philosophy-compo > .philosophy_item {
    width: calc((100% - 72px) / 3);
    margin-left: 36px;
    padding-top: 30px;
  }
  /* for IE11 */
  [data-browser="ie11"] .philosophy-compo > .philosophy_item { width: calc(((100% -  72px) / 3) - 0.1px); }
  /* for Edge */
  [data-browser="edge"] .philosophy-compo > .philosophy_item { width: calc(((100% -  72px) / 3) - 0.1px); }
  .philosophy-compo > .philosophy_item:nth-child(1) { order: 2; padding-top: 0; }
  .philosophy-compo > .philosophy_item:nth-child(2) { order: 1; margin-left: 0; }
  .philosophy-compo > .philosophy_item:nth-child(3) { order: 2; }
  .philosophy-compo > .philosophy_item > *:first-child,
  .philosophy-compo > .philosophy_item > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .philosophy-compo > .philosophy_item .philosophy_heading {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    height: 175px;
    padding: 30px;
    border: 1px solid #e60012;
    background-color: #fff;
    text-align: center;
  }
  .philosophy-compo > .philosophy_item:nth-child(1) .philosophy_heading {
    position: relative;
    z-index: 2;
    width: calc(100% + 112px);
    height: 185px;
    margin: 0 -56px;
  }
  .philosophy-compo > .philosophy_item .philosophy_heading > *:first-child,
  .philosophy-compo > .philosophy_item .philosophy_heading > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .philosophy-compo > .philosophy_item .philosophy_statement {
    color: #e60012;
    font-size: 2.2rem;
  }
  .philosophy-compo > .philosophy_item .philosophy_statement > strong {
    font-weight: 500;
  }
  .philosophy-compo > .philosophy_item .philosophy_statement_2 {
    margin-top: 1em;
    color: #e60012;
  }
  .philosophy-compo > .philosophy_item .philosophy_statement_2 > strong {
    font-weight: 500;
  }
  .philosophy-compo > .philosophy_item .philosophy_detail {
    margin-top: 25px;
  }
  .philosophy-compo > .philosophy_item:nth-child(1) .philosophy_detail {
    margin-top: 45px;
  }
  .philosophy-compo > .philosophy_item .philosophy_detail > *:first-child,
  .philosophy-compo > .philosophy_item .philosophy_detail > *:first-child > [class*="heading-lv"] {
    margin-top: 0 !important;
  }
  .philosophy-compo > .philosophy_item .philosophy_detail .philosophy_discription {
    font-size: 1.5rem;
  }
  .philosophy-compo > .philosophy_item .philosophy_detail [class*="list-order"] > li {
    font-size: 1.5rem;
  }
  .philosophy-compo > .philosophy_item .philosophy_detail [class*="list-order"] > li > .list_mark {
    font-weight: 400;
  }
  
  /* ----- products-layout ----- */
  .products-layout {
    margin: 30px 0 0;
  }
  .products-layout .products_link {
    display: flex;
    flex-wrap: wrap;
  }
  .products-layout .products_link > li {
    display: flex;
    width: calc((100% - 36px * 3) / 4);
    margin-top: 30px;
    margin-left: 36px;
    box-sizing: border-box;
    background-color: #fff;
    border: 1px solid #dfdfe3;
  }
  .products-layout .products_link > li:nth-child(-n+4) {
    margin-top: 0 !important;
  }
  .products-layout .products_link > li:nth-child(4n+1) {
    margin-left: 0 !important;
  }
  .products-layout .products_link > li > .products_block {
    display: flex;
    width: 100%;
  }
  .products-layout .products_link > li > a.products_block {
    position: relative;
  }
  .products-layout .products_link > li > a.products_block::before {
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    width: 10px;
    height: 10px;
    margin-top: -8px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .products-layout .products_link > li > a.products_block:hover {
    color: #e60012;
  }
  .products-layout .products_link > li > .products_block > .products_icon,
  .products-layout .products_link > li > .products_block > .products_label {
    display: flex;
    align-items: center;
  }
  .products-layout .products_link > li > .products_block > .products_icon {
    width: 80px;
    background-color: #f7f7fa;
  }
  .products-layout .products_link > li > .products_block > .products_icon img {
    flex-shrink: 0;
  }
  .products-layout .products_link > li > .products_block > .products_label {
    flex: 1;
    padding: 10px 40px 10px 20px;
    font-size: 2.0rem;
  }
  
  /* ----- products-search-layout ----- */
  .products-search-layout {
    margin: 2.5em 0 0;
    border: 1px solid #dfdfe3;
  }
  .products-search-layout:hover,
  .products-search-layout:hover .search_frame {
    border-color: #bbb;
  }
  .products-search-layout .search_heading {
    position: relative;
    padding: 15px 60px 15px 20px;
    font-size: 2.5rem;
    font-weight: 700;
    cursor: pointer;
  }
  .products-search-layout .search_heading::before,
  .products-search-layout .search_heading::after {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 20px;
    height: 2px;
    margin-top: -1px;
    background-color: #e60012;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    content: "";
  }
  .products-search-layout .search_heading::before {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .products-search-layout .search_heading.is-active::before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .products-search-layout .search_heading:hover {
    border-color: #bbb;
  }
  .products-search-layout .search_frame {
    padding: 25px 20px 20px;
    border-top: 1px solid #dfdfe3;
  }
  .products-search-layout .search_frame > *:first-child {
    margin-top: 0;
  }
  .products-search-layout .search_column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 1.5em 0 0;
  }
  .products-search-layout .search_column > * > *:first-child {
    margin-top: 0;
  }
  .products-search-layout .search_column > .column_link {
    padding: 0 0 0 36px;
    white-space: nowrap;
  }
  .products-search-layout .search_column > .column_link .link-text {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
  }
  .products-search-layout .search_column > .column_link .link-text > li {
    margin-top: 0;
  }
  .products-search-layout .search_column > .column_link .link-text > li + li {
    margin-left: 40px;
  }
  .products-search-layout .products-layout {
    margin-top: 25px;
  }
  .products-search-layout .products-layout .products_link > li {
    width: calc((100% - 10px * 3) / 4);
    margin-top: 10px;
    margin-left: 10px;
  }
  .products-search-layout .products-layout .products_link > li > .products_block > .products_icon {
    width: 60px;
  }
  .products-search-layout .products-layout .products_link > li > .products_block > .products_label {
    font-size: 1.6rem;
  }
  /* v2 */
  .products-search-layout-v2 {
    margin: 2.5em 0 0;
  }
  .products-search-layout-v2 .search_text {
    display: flex;
    flex-wrap: wrap;
  }
  .products-search-layout-v2 .search_text > dt {
    white-space: nowrap;
  }
  .products-search-layout-v2 .search_text > dt::after {
    content: ":";
    display: inline-block;
    width: .5em;
    margin-left: 5px;
    text-align: center;
  }
  .products-search-layout-v2 .search_text > dd {
    flex: 1;
  }
  .products-search-layout-v2 .search_text > dd > span {
    color: #e60012;
  }
  .products-search-layout-v2 .search_text_2 > span {
    font-size: 3.0rem;
    font-weight: 700;
  }
  .products-search-layout-v2 .search_text_2 > span > em {
    font-style: normal;
  }
  
  /* ----- innovation-list ----- */
  .innovation-list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
  }
  .innovation-list > li {
    position: relative;
    width: calc((100% - 100px) / 2);
    margin-left: 40px;
    font-size: 2.0rem;
    text-align: center;
  }
  .innovation-list > li:nth-child(3n+1) {
    margin-left: 0;
  }
  .innovation-list > li .is-highlight {
    color: #e60012;
    font-size: 120%;
    font-weight: 400;
  }
  .innovation-list > li + li::before {
    position: absolute;
    top: 50%;
    left: -24px;
    width: 1px;
    height: 66px;
    margin: -33px 0 0 0;
    background-color: #e0e0e0;
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg);
    content: "";
  }
  
  /* ----- library-item ----- */
  .library-item {
    display: -webkit-flex;
    display: flex;
    border-bottom: 1px solid #dfdfe3;
  }
  .library-item .library_item_heading {
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    position: relative;
    width: 22%;
    padding: 0 2rem;
    background: #f7f7fa;
    font-size: 1.6rem;
    font-weight: 700;
  }
  .library-item .library_item_detail {
    width: 78%;
  }
  .library-item .library_table_column {
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    width: 100%;
    text-align: center;
  }
  .library-item .library_table_column[data-count-pc="1"] {
    -webkit-box-pack: center;
    justify-content: center;
    border-left: 1px solid #dfdfe3;
  }
  .library-item .library_table_column .library_table_data {
    min-height: 70px;
  }
  .library-item .library_table_column[data-count-pc="4"] .library_table_data {
    width: 25%;
    border-left: 1px solid #dfdfe3;
  }
  .library-item .library_table_column[data-count-pc="1"] .library_table_data {
    width: 12.9%;
    border-left: none;
  }
  .library-item .library_table_column .library_table_data a {
    position: relative;
    min-height: 70px;
    overflow: hidden;
  }
  .library-item .library_table_data .data_title {
    display: none;
  }
  .library-item .library_table_data a .data_icon {
    position: absolute;
    top: 50%;
    left: 50%;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    transform: translate(-50%,-50%);
  }
  
  /* ----- csr-index-compo ----- */
  .csr-index-compo {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
    width: 100%;
  }
  .csr-index-compo > .index_banner {
    display: -webkit-flex;
    display: flex;
  }
  .csr-index-compo > .index_banner.type-message {
    width: 100%;
  }
  [data-browser="edge"] .csr-index-compo > .index_banner.type-message {
    width: 100%;
  }
  .csr-index-compo > .index_banner.type-overview {
    -webkit-flex: 1;
    flex: 1;
  }
  .csr-index-compo > .index_banner > .block {
    position: relative;
    width: 100%;
  }
  .csr-index-compo > .index_banner.type-message > .block {
    border: 1px solid #ddd;;
    background-color: #f3f3ec;
  }
  .csr-index-compo > .index_banner.type-overview > .block {
    background-color: #f7f7fa;
  }
  .csr-index-compo > .index_banner > .block .index_heading {
    position: absolute;
    top: 13%;
    left: 0;
    width: 100%;
    font-size: 2.2rem;
    line-height: 1.6;
  }
  .csr-index-compo > .index_banner > .block .index_heading::after {
    display: inline-block;
    position: relative;
    top: -2px;
    right: 2px;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .csr-index-compo > .index_banner.type-message > .block .index_heading {
    padding: 0 5%;
  }
  .csr-index-compo > .index_banner.type-overview > .block .index_heading {
    padding: 0 9.4%;
  }
  .csr-index-compo > .index_banner.type-message > .block .index_image {
    padding: 0 5% 0 39.4%;
  }
  .csr-index-compo > .index_banner.type-overview > .block .index_image {
    position: absolute;
    top: 48%;
    left: 0;
    width: 100%;
    padding: 0 9.4%;
    text-align: center;
  }
  .csr-index-compo > .index_banner > a.block:hover .index_heading {
    text-decoration: underline;
  }
  
  /* ----- csr-news-compo ----- */
  .csr-news-compo {
    margin-top: 2.5em;
  }
  .csr-news-compo .news_heading {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
  }
  .csr-news-compo .news_heading > .news_heading_title {
    -webkit-flex: 1;
    flex: 1;
    font-size: 2.2rem;
  }
  .csr-news-compo .news_heading > .news_heading_link {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: center;
    align-items: center;
    white-space: nowrap;
  }
  .csr-news-compo .news_heading > .news_heading_link > li {
    margin-left: 30px;
  }
  .csr-news-compo .news_heading > .news_heading_link > li > a.a-rss::before {
    position: relative;
    top: -2px;
    margin: 0 8px 0 0;
  }
  .csr-news-compo .news_heading > .news_heading_link > li > a.a-link::after {
    position: relative;
    top: -2px;
    right: 2px;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 0 0 10px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    vertical-align: middle;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .csr-news-compo .news_latest .news-compo {
    margin-top: 1em;
  }
  .csr-news-compo .news_latest .news-compo .block {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .csr-news-compo .news_latest .news-compo .news_detail .news_title {
    margin-top: .2em;
  }
  
  /* ----- awards-compo ----- */
  .awards-compo {
    margin-top: 3em;
    overflow: hidden;
  }
  .awards-compo .awards_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    align-items: center;
    margin: .5em -30px 0 0;
    overflow: hidden;
  }
  .awards-compo .awards_list > li {
    margin: .5em 30px 0 0;
  }
  .awards-compo .awards_list > li:last-child {
    margin-right: 0;
  }
  .awards-compo .awards_list_2 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    align-items: center;
    margin: 0 -30px 0 0;
    overflow: hidden;
  }
  .awards-compo .awards_list_2 > li {
    margin: 0 30px 0 0;
  }
  
  /* ----- contact-layout ----- */
  .contact-layout {
    margin: 2.8em 0 0 !important;
  }
  .contact-layout .contact_button {
    display: flex;
    flex-wrap: wrap;
  }
  .contact-layout .contact_button > li {
    display: flex;
    width: calc((100% - 36px * 2) / 3 - 0.1px);
    margin: 30px 0 0 36px;
  }
  .contact-layout .contact_button > li:nth-child(-n+3) {
    margin-top: 0;
  }
  .contact-layout .contact_button > li:nth-child(3n+1) {
    margin-left: 0;
  }
  .contact-layout .contact_button > li > a {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 34px 52px 34px 22px;
    box-sizing: border-box;
    background-color: #fff;
    border: 1px solid #dfdfe3;
    text-decoration: none;
  }
  .contact-layout .contact_button > li > a::before {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 10px;
    height: 10px;
    margin-top: -5px;
    margin-right: 2px;
    border-top: 1px solid #e60012;
    border-right: 1px solid #e60012;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
  .contact-layout .contact_button > li > a[class*="a-"]::before {
    border: none;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .contact-layout .contact_button > li > a.a-pdf::before {
    margin-top: -8px;
  }
  .contact-layout .contact_button > li > a:hover {
    box-shadow: 0 5px 10px 2px rgba(0,0,0,.15);
    border-color: #fff;
  }
  .contact-layout .contact_button > li > a > span.button_icon {
    width: 31.66%;
  }
  .contact-layout .contact_button > li > a > span.button_label {
    flex: 1;
    padding: 0 0 0 15px;
  }
  
  /* ----- colorbox ----- */
  #colorbox.modal-movie {
    overflow: visible !important;
  }
  .modal-movie #cboxWrapper {
    overflow: visible !important;
  }
  .modal-movie #cboxLoadedContent {
    border: none;
  }
  .modal-movie #cboxClose {
    top: 0;
    right: -70px;
    width: auto;
    height: auto;
    background: none;
    text-indent: -9999em;
    outline: none;
  }
  .modal-movie #cboxClose > span {
    display: block;
    position: relative;
    width: 70px;
    height: 70px;
    background-color: #e60012;
  }
  .modal-movie #cboxClose > span::before,
  .modal-movie #cboxClose > span::after {
    position: absolute;
    top: 50%;
    left: 50%;
    display: inline-block;
    width: 26px;
    height: 2px;
    margin: -1px 0 0 -13px;
    background-color: #fff;
    content: "";
  }
  .modal-movie #cboxClose > span::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .modal-movie #cboxClose > span::after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .modal-movie #cboxClose > span:hover {
    background-color: #cf0212;
  }
  .modal-movie .cboxIframe {
    background: #000;
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .column-media::after,
  .index-layout-v3 > .block::after {
    display: block;
    clear: both;
    content: "";
  }
}

/* ======================================================
 * Media Queries
====================================================== */
@media screen and (min-width: 1921px) {
}
@media screen and (min-width: 768px) and (max-width: 1920px) {
}
@media screen and (min-width: 768px) and (max-width: 1536px) {
}
@media screen and (min-width: 768px) and (max-width: 1366px) {
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
  .box-layout-v2 > .box_title {
    font-size: 3.2rem;
  }
  .index-layout-v9 > .index_heading > .block .index_title {
    font-size: 1.8rem;
  }
  .index-layout-v9 > .index_heading > .block .index_title .is-smaller {
    font-size: 1.4rem;
  }
  .navi-anchor .navi_inner > li[class*="type-philosophy"] > a .navi_label {
    font-size: 1.4rem;
  }
  .innovation-list > li {
    font-size: 1.8rem;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
    top: 95px;
  }
  .products-layout .products_link > li > .products_block > .products_label {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1112px) {
  .box-layout-v2 > .box_detail {
    padding: 3%;
  }
  .navi-local .navi_list > li > a .navi_label {
    font-size: 1.6rem;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
    top: 85px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1080px) {
  .heading-lv1 .heading_image > img {
    max-width: 200px;
    height: auto;
  }
  .products-index-layout .index_content .index_links {
    margin-right: 0;
  }
  .products-index-layout .index_content .index_links > li {
    width: calc((100% - 36px) / 2);
    margin-left: 36px;
    margin-right: 0;
  }
  .products-index-layout .index_content .index_links > li:nth-child(2n+1) {
    margin-left: 0;
  }
  .products-index-layout .index_content .index_links > li [class*="link-button-"] a {
    min-width: 0;
  }
  .navi-local .navi_list > li > a .navi_icon {
    margin-right: 15px;
  }
  .navi-local .navi_list > li > a .navi_icon img {
    width: 45px;
    height: 45px;
  }
  .products-layout .products_link > li > .products_block > .products_icon {
    width: 70px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .index-layout-v3 > .block .index_image {
    width: 180px;
  }
  .navi-anchor .navi_inner > li[class*="type-philosophy"] > a::after {
    top: 10px;
    left: 50%;
    margin: 0 0 0 -12px;
  }
  .navi-anchor .navi_inner > li[class*="type-philosophy"] > a .navi_label {
    padding-top: 10px;
    padding-right: 0;
    padding-left: 0;
    font-size: 1.8rem;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
    top: 75px;
  }
  .products-layout .products_link > li > .products_block > .products_icon {
    width: 60px;
  }
  .products-layout .products_link > li > .products_block > .products_label {
    padding-right: 35px;
    padding-left: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 960px) {
  .heading-lv1 .heading_image > img {
    max-width: 180px;
    height: auto;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
    top: 70px;
  }
  .products-search-layout .products-layout .products_link > li > .products_block > .products_icon {
    width: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 896px) {
  .heading-lv1 .heading_image > img {
    max-width: 160px;
    height: auto;
  }
  [class*="link-button"].is-centering {
    padding: 0 30px;
  }
  [class*="link-button"].is-centering > li {
    width: calc((100% - 36px) / 2);
  }
  [class*="link-button"].is-centering > li > a {
    width: 100%;
  }
  .index-layout-v9 > .index_heading > .block .index_caption .index_caption_inner {
    padding-left: 10px;
  }
  .navi-local .navi_list > li > a .navi_icon {
    margin-right: 10px;
  }
  .navi-local .navi_list > li > a .navi_icon img {
    width: 40px;
    height: 40px;
  }
  .location-compo .location_table .location_links > li > a {
    min-width: 140px;
  }
  .index-layout-v3 > .block .index_image {
    width: 140px;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
    top: 65px;
  }
  .products-layout .products_link > li > .products_block > .products_icon {
    width: 50px;
  }
  .products-search-layout .products-layout .products_link > li > .products_block > .products_icon {
    width: 40px;
  }
  .contact-compo .contact_box > .contact_content .link-button-v2 a {
    width: 100%;
    min-width: 0;
  }
}
@media screen and (min-width: 768px) and (max-width: 834px) {
  .index-layout-v9 > .index_heading > .block .index_title {
    font-size: 1.5rem;
  }
  .index-layout-v9 > .index_heading > .block .index_title .is-smaller {
    font-size: 1.1rem;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
    top: 60px;
  }
  .products-search-layout .search_column {
    -webkit-flex-direction: column;
    flex-direction: column;
  }
  .products-layout .products_link > li > .products_block > .products_icon {
    width: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 812px) {
  .box-layout-v2 > .box_title {
    font-size: 2.8rem;
  }
  .index-layout-v9 > .index_heading > a.block .index_caption::before {
    right: 8px;
  }
  .index-layout-v9 > .index_heading > .block .index_caption .index_caption_inner {
    padding-right: 20px;
  }
  .innovation-list > li {
    font-size: 1.7rem;
  }
  .navi-local .navi_list > li > a .navi_icon img {
    width: 35px;
    height: 35px;
  }
  .location-compo .location_table .location_links > li > a {
    min-width: 130px;
  }
  .slider-gallery-compo-v2 .gallery_carousel .gallery_carousel_photos .slick-arrow {
    top: 55px;
  }
}


/* ======================================================
 * Print
====================================================== */
@media print {
  .tab-layout > .tab_navi,
  .navi-anchor,
  .related-compo-v2 {
    width: 100%;
    margin-left: 0;
  }
  .tab-layout > .tab_navi > .tab_list {
    width: 100%;
    max-width: 1280px;
    padding: 0;
  }
}